New issue
Advanced search Search tips

Issue 695382 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug



Sign in to add a comment

microdump free space histograms do not count memory above TASK_SIZE as unavailable.

Project Member Reported by tobiasjs@chromium.org, Feb 23 2017

Issue description

e.g. 00300000 FFFF1000 015D 413F7000 88541000 0C:39 0D:21 0E:17 0F:75 10:0C 11:10 12:0E 13:11 14:11 15:09 16:0D 17:07 18:08 19:02 1A:01 1B:01 1C:01 1E:01

In the above histogram, there's a block of size FFFF1000 that is not actually free.

The problem is that the memory between the [stack] mapping and the [vectors] mapping is counted as free space, but (most of) it is actually outside the userspace mappable region.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/breakpad/breakpad/+/846b6335c5b0ba46dfa2ed96fccfa3f7a02fa2f1

commit 846b6335c5b0ba46dfa2ed96fccfa3f7a02fa2f1
Author: Tobias Sargeant <tobiasjs@google.com>
Date: Wed Mar 29 10:42:31 2017

Treat the process stack as the top of memory for free space histograms.

Because we can't determine the top of userspace mappable memory
directly, we rely on the fact that the process stack is allocated at the
top of the address space (minus some randomization). Anything after that
should not count as free space.

BUG= 695382 

Change-Id: I68453aac9732c2bd4b87236b234518068dec6640
Reviewed-on: https://chromium-review.googlesource.com/446100
Reviewed-by: Primiano Tucci <primiano@chromium.org>

[modify] https://crrev.com/846b6335c5b0ba46dfa2ed96fccfa3f7a02fa2f1/src/client/linux/microdump_writer/microdump_writer.cc
[modify] https://crrev.com/846b6335c5b0ba46dfa2ed96fccfa3f7a02fa2f1/src/client/linux/minidump_writer/linux_dumper.h

Status: Fixed (was: Assigned)

Sign in to add a comment