• Matthew Jones's avatar
    Revert "metrics: Initialize persistent metric allocator early." · 4e2d1e0d
    Matthew Jones authored
    This reverts commit 0cdc1458.
    
    Reason for revert: Breaks ToastHWATest* on Marshmallow 64 bit Tester:
    [FATAL:persistent_histogram_allocator.cc(893)] Check failed: !subtle::NoBarrier_Load(&g_histogram_allocator).
    
    https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Marshmallow%2064%20bit%20Tester/23305
    
    Original change's description:
    > metrics: Initialize persistent metric allocator early.
    > 
    > The PersistentMemoryAllocator in the gpu (and other) process is created
    > asynchronously. If any uma-histogram is reported before that time, then
    > those Histograms are not stored in the shared memory. This has some
    > implications:
    >  . If the process crashes (which is common for the gpu process on
    >    android), then these metrics are lost.
    >  . If the process stays alive, then the metrics are reported
    >    periodically, but because it is buffered, it doesn't match up
    >    correctly with the other metrics that are reported in the shared
    >    memory.
    > 
    > The allocator is created in response to a message from the browser,
    > which includes the handle for the shared memory to use for the allocator.
    > The browser waits until the process has been launched and connected.
    > So this happens much later, compared to other messages which are sent
    > from browser over mojo without waiting for the connection to have
    > been established first. Therefore, change this so that the browser
    > immediately shares the shared-memory segment with the gpu process. mojo
    > takes care of waiting for the process-launch etc.
    > 
    > BUG=865179, 778749
    > 
    > Change-Id: Iccd3d4422de3e22ead4bc6510afc5ea207bf6b6e
    > Reviewed-on: https://chromium-review.googlesource.com/1174709
    > Reviewed-by: Brian White <bcwhite@chromium.org>
    > Reviewed-by: Avi Drissman <avi@chromium.org>
    > Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#583673}
    
    TBR=avi@chromium.org,sadrul@chromium.org,bcwhite@chromium.org
    
    Change-Id: I65e9ad62e6613d0eaf08e834def5a988a60c4a19
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: 865179, 778749
    Reviewed-on: https://chromium-review.googlesource.com/1179041Reviewed-by: default avatarMatthew Jones <mdjones@chromium.org>
    Commit-Queue: Matthew Jones <mdjones@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#583859}
    4e2d1e0d
browser_child_process_host_impl.cc 23.3 KB