Issue metadata
Sign in to add a comment
|
Network service asserting in histogram code. |
||||||||||||||||||||||||
Issue descriptionIf you enable the histogram service on top of tree, you get a crash with the following trace (There are a bunch of different traces you can get, but all crash in Histogram::Factory::Build). Sample trace: [121147:121163:0804/180740.067195:FATAL:histogram.cc(200)] Check failed: !allocator. #0 0x7fdb4b481217 base::debug::StackTrace::StackTrace() #1 0x7fdb4b4a8231 logging::LogMessage::~LogMessage() #2 0x7fdb4b4c0822 base::Histogram::Factory::Build() #3 0x7fdb4b4c319f base::LinearHistogram::FactoryGetWithRangeDescription() #4 0x7fdb4b4c32f7 base::LinearHistogram::FactoryGet() #5 0x7fdb4a23b886 net::HttpCache::Transaction::RecordHistograms() #6 0x7fdb4a230877 net::HttpCache::Transaction::DoneWritingToEntry() #7 0x7fdb4a237c10 net::HttpCache::Transaction::DoCacheWriteDataComplete() #8 0x7fdb4a22eafd net::HttpCache::Transaction::DoLoop() #9 0x7fdb4a23069f net::HttpCache::Transaction::Read() I assume this means the NetworkService process should be doing some sort of initialization of globals for histograms. This trace seems to imply that allocator is non-null, but allocator->AllocateHistogram is failing, which seems weird to me, though I'm unfamiliar with the histograms code.
,
Aug 5 2017
[+bcwhite] The issue is that browser_child_process_host_impl only allocates 64k of memory to the "SharedPersistentMemoryAllocator" for utility processes. The network process's histograms exceed this amount (When quic and the disk cache are enabled, we log a lot more histograms), and then when we run out of memory, Histogram::Factory::Build DCHECKs. So we need to allocate more for a network process. I guess we need a new process type? At least I assume we don't want all utility processes to request more.
,
Aug 7 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e5bc4a56c8ac0317d09a3b7a1e0b189d5b5fc580 commit e5bc4a56c8ac0317d09a3b7a1e0b189d5b5fc580 Author: Matt Menke <mmenke@chromium.org> Date: Mon Aug 07 23:58:22 2017 Allocate more memory for utility process histograms. The network service is a utility process, and runs out of histogram memory when it's enabled. Bug: 752565 Change-Id: Ic05d130bca971c6b1268715d0fb1ae519beab954 Reviewed-on: https://chromium-review.googlesource.com/603774 Reviewed-by: Avi Drissman <avi@chromium.org> Reviewed-by: Brian White <bcwhite@chromium.org> Commit-Queue: Matt Menke <mmenke@chromium.org> Cr-Commit-Position: refs/heads/master@{#492460} [modify] https://crrev.com/e5bc4a56c8ac0317d09a3b7a1e0b189d5b5fc580/content/browser/browser_child_process_host_impl.cc
,
Aug 8 2017
,
Nov 7 2017
Apologies, applied the wrong component in bulk. |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by mmenke@chromium.org
, Aug 4 2017