| Index: base/trace_event/malloc_dump_provider.cc
|
| diff --git a/base/trace_event/malloc_dump_provider.cc b/base/trace_event/malloc_dump_provider.cc
|
| index c04b8588c276137d019bdd2bffd42e7b9e7ee5ef..92d513f99d3e311bef9aecce5d3a186736a78957 100644
|
| --- a/base/trace_event/malloc_dump_provider.cc
|
| +++ b/base/trace_event/malloc_dump_provider.cc
|
| @@ -12,6 +12,9 @@ namespace base {
|
| namespace trace_event {
|
|
|
| // static
|
| +const char MallocDumpProvider::kAllocatedObjects[] = "malloc/allocated_objects";
|
| +
|
| +// static
|
| MallocDumpProvider* MallocDumpProvider::GetInstance() {
|
| return Singleton<MallocDumpProvider,
|
| LeakySingletonTraits<MallocDumpProvider>>::get();
|
| @@ -29,21 +32,20 @@ bool MallocDumpProvider::OnMemoryDump(ProcessMemoryDump* pmd) {
|
| struct mallinfo info = mallinfo();
|
| DCHECK_GE(info.arena + info.hblkhd, info.uordblks);
|
|
|
| - MemoryAllocatorDump* dump = pmd->CreateAllocatorDump("malloc");
|
| - if (!dump)
|
| - return false;
|
| -
|
| // When the system allocator is implemented by tcmalloc, the total physical
|
| // size is given by |arena| and |hblkhd| is 0. In case of Android's jemalloc
|
| // |arena| is 0 and the outer pages size is reported by |hblkhd|. In case of
|
| // dlmalloc the total is given by |arena| + |hblkhd|.
|
| // For more details see link: http://goo.gl/fMR8lF.
|
| - dump->AddScalar(MemoryAllocatorDump::kNameOuterSize,
|
| - MemoryAllocatorDump::kUnitsBytes, info.arena + info.hblkhd);
|
| + MemoryAllocatorDump* outer_dump = pmd->CreateAllocatorDump("malloc");
|
| + outer_dump->AddScalar(MemoryAllocatorDump::kNameSize,
|
| + MemoryAllocatorDump::kUnitsBytes,
|
| + info.arena + info.hblkhd);
|
|
|
| // Total allocated space is given by |uordblks|.
|
| - dump->AddScalar(MemoryAllocatorDump::kNameInnerSize,
|
| - MemoryAllocatorDump::kUnitsBytes, info.uordblks);
|
| + MemoryAllocatorDump* inner_dump = pmd->CreateAllocatorDump(kAllocatedObjects);
|
| + inner_dump->AddScalar(MemoryAllocatorDump::kNameSize,
|
| + MemoryAllocatorDump::kUnitsBytes, info.uordblks);
|
|
|
| return true;
|
| }
|
|
|