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; |
} |