| Index: components/discardable_memory/common/discardable_shared_memory_heap.cc
|
| diff --git a/components/discardable_memory/common/discardable_shared_memory_heap.cc b/components/discardable_memory/common/discardable_shared_memory_heap.cc
|
| index 7eacbeeec77e03d56bbe2efe6edd459c30cdc4d1..55b334a094567aadec517f67b27279539ac109aa 100644
|
| --- a/components/discardable_memory/common/discardable_shared_memory_heap.cc
|
| +++ b/components/discardable_memory/common/discardable_shared_memory_heap.cc
|
| @@ -11,6 +11,7 @@
|
| #include "base/macros.h"
|
| #include "base/memory/discardable_shared_memory.h"
|
| #include "base/memory/ptr_util.h"
|
| +#include "base/memory/shared_memory_tracker.h"
|
| #include "base/strings/stringprintf.h"
|
| #include "base/trace_event/memory_dump_manager.h"
|
|
|
| @@ -422,36 +423,9 @@ void DiscardableSharedMemoryHeap::OnMemoryDump(
|
| // dumper active and the single ownership edge will become a no-op in the UI.
|
| // The global dump is created as a weak dump so that the segment is removed if
|
| // the browser does not dump it (segment was purged).
|
| - const uint64_t tracing_process_id =
|
| - base::trace_event::MemoryDumpManager::GetInstance()
|
| - ->GetTracingProcessId();
|
| - base::trace_event::MemoryAllocatorDumpGuid shared_segment_guid =
|
| - GetSegmentGUIDForTracing(tracing_process_id, segment_id);
|
| - // TODO(ssid): Make this weak once the GUID created is consistent
|
| - // crbug.com/661257.
|
| - pmd->CreateSharedGlobalAllocatorDump(shared_segment_guid);
|
| -
|
| - // The size is added to the global dump so that it gets propagated to both the
|
| - // dumps associated.
|
| - pmd->GetSharedGlobalAllocatorDump(shared_segment_guid)
|
| - ->AddScalar(base::trace_event::MemoryAllocatorDump::kNameSize,
|
| - base::trace_event::MemoryAllocatorDump::kUnitsBytes,
|
| - allocated_objects_size_in_bytes);
|
| -
|
| - // By creating an edge with a higher |importance| (w.r.t. browser-side dumps)
|
| - // the tracing UI will account the effective size of the segment to the
|
| - // client.
|
| - const int kImportance = 2;
|
| - pmd->AddOwnershipEdge(segment_dump->guid(), shared_segment_guid, kImportance);
|
| -}
|
| -
|
| -// static
|
| -base::trace_event::MemoryAllocatorDumpGuid
|
| -DiscardableSharedMemoryHeap::GetSegmentGUIDForTracing(
|
| - uint64_t tracing_process_id,
|
| - int32_t segment_id) {
|
| - return base::trace_event::MemoryAllocatorDumpGuid(base::StringPrintf(
|
| - "discardable-x-process/%" PRIx64 "/%d", tracing_process_id, segment_id));
|
| + base::SharedMemoryTracker::AddOwnershipEdges(pmd, segment_dump->guid(),
|
| + shared_memory->handle(),
|
| + allocated_objects_size_in_bytes);
|
| }
|
|
|
| base::trace_event::MemoryAllocatorDump*
|
|
|