PartitionAlloc and Oilpan have context strings that need to be saved in the profiling process. These need to be uniquified because there are relatively few categories of context.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/da60b8c117002067e98d0e96e81e671b00fbaeef commit da60b8c117002067e98d0e96e81e671b00fbaeef Author: Brett Wilson <brettw@chromium.org> Date: Tue Sep 12 16:48:32 2017 Write allocation context to memlog traces. The context information is set by PartitionAlloc to save some extra context for the allocation. This is written to the "types" field of the trace. Since the number of parameters to the Export functions was getting high, this moves most of them into a struct where they can be named. Currently, no grouping by allocator is done, this will be done in a followup. Bug: 763173 Change-Id: Id690a4012855c1714d6e6984436fda2bc8367eab Reviewed-on: https://chromium-review.googlesource.com/661893 Commit-Queue: Brett Wilson <brettw@chromium.org> Reviewed-by: Erik Chen <erikchen@chromium.org> Cr-Commit-Position: refs/heads/master@{#501308} [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/allocation_event.cc [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/allocation_event.h [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/allocation_tracker.cc [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/allocation_tracker.h [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/json_exporter.cc [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/json_exporter.h [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/json_exporter_unittest.cc [modify] https://crrev.com/da60b8c117002067e98d0e96e81e671b00fbaeef/chrome/profiling/memlog_connection_manager.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e356ae5039081a7322cf57a0dee00f16a85ed437 commit e356ae5039081a7322cf57a0dee00f16a85ed437 Author: Brett Wilson <brettw@chromium.org> Date: Wed Sep 13 17:24:58 2017 Hook up allocator types in OOP memlog. Writes separate sections of allocator types for the OOP memory log. Sone refactoring in support of this. Adds tests for allocator splits and context information. Bug: 763173 Change-Id: I81aeae226075b221d5b0b944fe74980557ffce32 Reviewed-on: https://chromium-review.googlesource.com/664083 Commit-Queue: Brett Wilson <brettw@chromium.org> Reviewed-by: Erik Chen <erikchen@chromium.org> Cr-Commit-Position: refs/heads/master@{#501674} [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/common/profiling/memlog_stream.h [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/allocation_event.cc [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/allocation_event.h [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/allocation_tracker.cc [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/allocation_tracker.h [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/json_exporter.cc [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/json_exporter.h [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/json_exporter_unittest.cc [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/memlog_connection_manager.cc [modify] https://crrev.com/e356ae5039081a7322cf57a0dee00f16a85ed437/chrome/profiling/memlog_stream_parser.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/defd75b9fb377e866044db43128cd2d9f366f17d commit defd75b9fb377e866044db43128cd2d9f366f17d Author: Brett Wilson <brettw@chromium.org> Date: Tue Sep 26 17:34:06 2017 Hook Oilpan to OOP memory logging. Plumbs the oilpan hooks to the out-of-process memory allocation log. Change two loops in ChromeContentRendererClient to use C++11. Bug: 763173 Change-Id: I7fc2b27fcc84c6f1298130096e584936042b9763 Reviewed-on: https://chromium-review.googlesource.com/671418 Reviewed-by: John Abd-El-Malek <jam@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Commit-Queue: Brett Wilson <brettw@chromium.org> Cr-Commit-Position: refs/heads/master@{#504413} [modify] https://crrev.com/defd75b9fb377e866044db43128cd2d9f366f17d/chrome/common/profiling/memlog_allocator_shim.cc [modify] https://crrev.com/defd75b9fb377e866044db43128cd2d9f366f17d/chrome/common/profiling/memlog_allocator_shim.h [modify] https://crrev.com/defd75b9fb377e866044db43128cd2d9f366f17d/chrome/renderer/chrome_content_renderer_client.cc [modify] https://crrev.com/defd75b9fb377e866044db43128cd2d9f366f17d/third_party/WebKit/Source/core/exported/WebHeap.cpp [modify] https://crrev.com/defd75b9fb377e866044db43128cd2d9f366f17d/third_party/WebKit/public/web/WebHeap.h
Comment 1 by bugdroid1@chromium.org
, Sep 12 2017