Create and pass shared-histogram-allocator from browser to renderer.
After the renderer is started, a shared-memory segment
is created and sent to it; all renderer histograms
created after that point will be stored there.
The SubprocessMetricsProvider extracts that shared
segment on the browser side and, when metrics are being
uploaded, iterates through all the histograms stored
there.
When the renderer exits, the SMP will continue to hold
a handle to the memory segment. Once all the histograms
are uploaded (during the next cycle), it will finally
release the memory back to the operating system.
BUG=
546019
Committed:
https://crrev.com/df016a7ce60decb9174ab2201bf4864fc7cefa82
Cr-Commit-Position: refs/heads/master@{#385873}
Committed:
https://crrev.com/5370ba54d267e69cc055c75738306644a93454cf
Cr-Commit-Position: refs/heads/master@{#386055}