New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 761234 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Segmentation fault at process_memory_metrics_emitter.cc:253

Project Member Reported by alemate@chromium.org, Sep 1 2017

Issue description

ToT, samus device.

Go through OOBE to first signin page. Chrome sometimes crashes after a few seconds:

Program received signal SIGSEGV, Segmentation fault.
0x00005d545a9e24bf in ProcessMemoryMetricsEmitter::CollateResults (this=0xfba326e9a80) at ../../../../src/chromium/src/chrome/browser/metrics/process_memory_metrics_emitter.cc:253
253	        ukm::UkmRecorder::Get()->UpdateSourceURL(source_id, GURL());
(gdb) bt
#0  0x00005d545a9e24bf in ProcessMemoryMetricsEmitter::CollateResults (this=0xfba326e9a80) at ../../../../src/chromium/src/chrome/browser/metrics/process_memory_metrics_emitter.cc:253
#1  0x00005d545a9e34bc in Invoke<scoped_refptr<ProcessMemoryMetricsEmitter> const&, bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump> > (method=<optimized out>, 
    receiver_ptr=..., args=<optimized out>, args=<optimized out>, args=<optimized out>) at ../../../../src/chromium/src/base/bind_internal.h:194
#2  MakeItSo<void (ProcessMemoryMetricsEmitter::* const&)(bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump>), scoped_refptr<ProcessMemoryMetricsEmitter> const&, bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump> > (functor=<optimized out>, args=<optimized out>, args=<optimized out>, args=<optimized out>, args=<optimized out>)
    at ../../../../src/chromium/src/base/bind_internal.h:277
#3  RunImpl<void (ProcessMemoryMetricsEmitter::* const&)(bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump>), std::tuple<scoped_refptr<ProcessMemoryMetricsEmitter> > const&, 0> (functor=<optimized out>, bound=..., unbound_args=<optimized out>, unbound_args=<optimized out>, unbound_args=<optimized out>) at ../../../../src/chromium/src/base/bind_internal.h:349
#4  base::internal::Invoker<base::internal::BindState<void (ProcessMemoryMetricsEmitter::*)(bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump>), scoped_refptr<ProcessMemoryMetricsEmitter> >, void (bool, unsigned long, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump>)>::Run(base::internal::BindStateBase*, bool&&, unsigned long&&, mojo::StructPtr<memory_instrumentation::mojom::GlobalMemoryDump>&&) (base=<optimized out>, unbound_args=<optimized out>, unbound_args=<optimized out>, unbound_args=<optimized out>)
    at ../../../../src/chromium/src/base/bind_internal.h:331
#5  0x00005d54591ed672 in Run (this=0xfba327004e8, args=..., args=..., args=...) at ../../../../src/chromium/src/base/callback.h:103
#6  memory_instrumentation::mojom::Coordinator_RequestGlobalMemoryDump_ForwardToCallback::Accept (this=<optimized out>, message=<optimized out>)
    at gen/services/resource_coordinator/public/interfaces/memory_instrumentation/memory_instrumentation.mojom.cc:983
#7  0x00005d545abd54e9 in mojo::InterfaceEndpointClient::HandleValidatedMessage (this=0xfba3048c580, message=0x7ffebbb01d50)
    at ../../../../src/chromium/src/mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:408
#8  0x00005d545abdb258 in mojo::internal::MultiplexRouter::ProcessIncomingMessage (this=0xfba304bd000, message_wrapper=0x7ffebbb01ed8, client_call_behavior=<optimized out>, 
    current_task_runner=<optimized out>) at ../../../../src/chromium/src/mojo/public/cpp/bindings/lib/multiplex_router.cc:872
#9  0x00005d545abdab4d in mojo::internal::MultiplexRouter::Accept (this=0xfba304bd000, message=<optimized out>) at ../../../../src/chromium/src/mojo/public/cpp/bindings/lib/multiplex_router.cc:599
#10 0x00005d545abd487c in mojo::Connector::ReadSingleMessage (this=0xfba304bd060, read_result=<optimized out>) at ../../../../src/chromium/src/mojo/public/cpp/bindings/lib/connector.cc:440
#11 0x00005d545abd4fa1 in mojo::Connector::ReadAllAvailableMessages (this=0xfba304bd060) at ../../../../src/chromium/src/mojo/public/cpp/bindings/lib/connector.cc:469
#12 0x00005d54591c0a32 in Run (this=<optimized out>, args=0) at ../../../../src/chromium/src/base/callback.h:92
#13 mojo::SimpleWatcher::DiscardReadyState(base::RepeatingCallback<void (unsigned int)> const&, unsigned int, mojo::HandleSignalsState const&) (callback=..., result=<optimized out>, state=...)
    at ../../../../src/chromium/src/mojo/public/cpp/system/simple_watcher.h:193
#14 0x00005d545abe4d34 in Run (args=..., args=..., this=<optimized out>) at ../../../../src/chromium/src/base/callback.h:92
#15 mojo::SimpleWatcher::OnHandleReady (this=0xfba324d0640, watch_id=<optimized out>, result=0, state=...) at ../../../../src/chromium/src/mojo/public/cpp/system/simple_watcher.cc:276
#16 0x00005d545ab28046 in Run (this=<optimized out>) at ../../../../src/chromium/src/base/callback.h:64
#17 base::debug::TaskAnnotator::RunTask (this=<optimized out>, queue_function=0x5d545f3e376f "MessageLoop::PostTask", pending_task=0x7ffebbb023f8)
    at ../../../../src/chromium/src/base/debug/task_annotator.cc:65
#18 0x00005d545ab4171e in base::MessageLoop::RunTask (this=0xfba2f372540, pending_task=0x7ffebbb023f8) at ../../../../src/chromium/src/base/message_loop/message_loop.cc:406
#19 0x00005d545ab41f1a in DeferOrRunPendingTask (this=<optimized out>, pending_task=...) at ../../../../src/chromium/src/base/message_loop/message_loop.cc:417
#20 base::MessageLoop::DoWork (this=0xfba2f372540) at ../../../../src/chromium/src/base/message_loop/message_loop.cc:524
#21 0x00005d545ab438c9 in base::MessagePumpLibevent::Run (this=0xfba2f3bdb80, delegate=0xfba2f372540) at ../../../../src/chromium/src/base/message_loop/message_pump_libevent.cc:220
#22 0x00005d545ab63b86 in base::RunLoop::Run (this=0x7ffebbb026c8) at ../../../../src/chromium/src/base/run_loop.cc:123
#23 0x00005d545a7f5d98 in ChromeBrowserMainParts::MainMessageLoopRun (this=0xfba2f361c00, result_code=<optimized out>) at ../../../../src/chromium/src/chrome/browser/chrome_browser_main.cc:1918
#24 0x00005d54593d86a4 in content::BrowserMainLoop::RunMainMessageLoopParts (this=0xfba2f372a80) at ../../../../src/chromium/src/content/browser/browser_main_loop.cc:1196
#25 0x00005d54593db072 in content::BrowserMainRunnerImpl::Run (this=0xfba2f393920) at ../../../../src/chromium/src/content/browser/browser_main_runner.cc:152
#26 0x00005d54593d3ebc in content::BrowserMain (parameters=...) at ../../../../src/chromium/src/content/browser/browser_main.cc:46
#27 0x00005d545a7ca0cc in content::ContentMainRunnerImpl::Run (this=0xfba2f34fea0) at ../../../../src/chromium/src/content/app/content_main_runner.cc:709
#28 0x00005d545a7ebb82 in service_manager::Main (params=...) at ../../../../src/chromium/src/services/service_manager/embedder/main.cc:469
#29 0x00005d545a7c9071 in content::ContentMain (params=...) at ../../../../src/chromium/src/content/app/content_main.cc:19
#30 0x00005d5458d401f5 in ChromeMain (argc=<optimized out>, argv=0x7ffebbb02ec8) at ../../../../src/chromium/src/chrome/app/chrome_main.cc:122
#31 0x0000722f9df7a736 in __libc_start_main (main=0x5d5458d40120 <main(int, char const**)>, argc=30, argv=0x7ffebbb02ec8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, 
    stack_end=0x7ffebbb02eb8) at ../csu/libc-start.c:289
#32 0x00005d5458d3ffe9 in _start ()


(gdb) list
248	    private_footprint_total_kb += pmd->os_dump->private_footprint_kb;
249	    switch (pmd->process_type) {
250	      case memory_instrumentation::mojom::ProcessType::BROWSER: {
251	        // Create a separate source for each non-renderer process type.
252	        ukm::SourceId source_id = ukm::UkmRecorder::GetNewSourceID();
253	        ukm::UkmRecorder::Get()->UpdateSourceURL(source_id, GURL());
254	        EmitBrowserMemoryMetrics(pmd, source_id, GetUkmRecorder());
255	        break;
256	      }
257	      case memory_instrumentation::mojom::ProcessType::RENDERER: {
(gdb) print ukm::UkmRecorder::Get()
[New Thread 13098]
$1 = (ukm::UkmRecorder *) 0x0
(gdb) 



 
Cc: -mpear...@chromium.org
Components: Internals>Metrics
Owner: erikc...@chromium.org
Status: Assigned (was: Untriaged)
Labels: franky-android
Status: Fixed (was: Assigned)

Comment 6 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Comment 7 by dchan@chromium.org, Jan 23 2018

Status: Fixed (was: Archived)

Sign in to add a comment