Preserve OOM call stack entries
Partition Alloc has a few different out-of-memory error reporting paths with different meanings for the "size" parameter. These different paths are supposed to be distinguishable by looking at the call stack but a combination of code folding and tail-call optimizations means that this is not actually guaranteed. In one (most?) crash dumps a call to PartitionOutOfMemoryWithLargeVirtualSize shows up on the stack as a call to PartitionExcessiveAllocationSize. This change disables code folding for the relevant functions, and disables tail calls as well. This should make understanding OOM failures easier. Bug: 1159694 Change-Id: I0faf577fa0e82e88f7a06940c97a570e778e5ec8 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2607585 Commit-Queue: Bruce Dawson <brucedawson@chromium.org> Commit-Queue: Will Harris <wfh@chromium.org> Reviewed-by:Will Harris <wfh@chromium.org> Reviewed-by:
Anton Bikineev <bikineev@chromium.org> Auto-Submit: Bruce Dawson <brucedawson@chromium.org> Cr-Commit-Position: refs/heads/master@{#840248}
Showing
Please register or sign in to comment