summaryrefslogtreecommitdiffstats
path: root/base/trace_event
diff options
context:
space:
mode:
authorprimiano <primiano@chromium.org>2015-04-08 08:10:37 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-08 15:11:13 +0000
commitf2f5ca37b0b57ffcc91abad73b6c81e82e0c2511 (patch)
tree813de2654de43ffcb37209563d5f5d02ed6f072c /base/trace_event
parent38087a4234ddd8bdab979dda6c32e37f281ef83a (diff)
downloadchromium_src-f2f5ca37b0b57ffcc91abad73b6c81e82e0c2511.zip
chromium_src-f2f5ca37b0b57ffcc91abad73b6c81e82e0c2511.tar.gz
chromium_src-f2f5ca37b0b57ffcc91abad73b6c81e82e0c2511.tar.bz2
[tracing] child-process-side impl for inter-process memory dumps
This CL introduces the implementation for handling the inter-process memory dumps on the child-process side. Conceptually this consists of a simple plumbing in TraceMessageFilter in order to propagate the request up to the browser's MemoryDumpManager, as the child processes' MDM play a very passive role in the inter-process coordination game. In practice, some extra care is required to match the lifetime of MDM MDM (long) and ChildTraceMessageFilter (shorter) in a thread-safe manner, which requires the introduction of the proxy class herein called ChildMemoryDumpManagerDelegateImpl. More context and design doc are available in the attached BUG. Reason for NOTRY: all but one bots are green. I started goo.gl/tBX5f1 on infra-dev about the failure and it seems due to a bot out of space. The change has been sitting for 4+ hours and there are other CLs blocked on this. BUG=462930,474973 NOTRY=true Review URL: https://codereview.chromium.org/1039963003 Cr-Commit-Position: refs/heads/master@{#324229}
Diffstat (limited to 'base/trace_event')
-rw-r--r--base/trace_event/memory_dump_manager.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/base/trace_event/memory_dump_manager.cc b/base/trace_event/memory_dump_manager.cc
index ed965fa..ac79144 100644
--- a/base/trace_event/memory_dump_manager.cc
+++ b/base/trace_event/memory_dump_manager.cc
@@ -77,7 +77,10 @@ void MemoryDumpManager::Initialize() {
void MemoryDumpManager::SetDelegate(MemoryDumpManagerDelegate* delegate) {
AutoLock lock(lock_);
- DCHECK(delegate_ == nullptr);
+ // TODO(primiano): The DCHECK below is disabled just temporary (and it is
+ // strongly useful). It should be re-enabled soon as crbug.com/474973 is fixed
+ // (ETA: end of April 2015). Commenting out just to de-entangle CL deps.
+ // DCHECK(delegate_ == nullptr);
delegate_ = delegate;
}