DescriptionRe-land chromeos: Add non-extension renderers to the freezer cgroup
In preparation for lucid sleep, we will be putting all chrome renderers
that do not host GCM extensions into a special freezer cgroup. All
processes in this cgroup will be frozen when the system suspends and
will not be thawed until the system has fully resumed.
The code to freeze and thaw the cgroup has existed for a while. This
code actually starts putting processes into the cgroup.
Additionally, to deal with potential races that may occur with other
suspend observers that interact with renderers, the RendererFreezer is
no longer a PowerManagerClient::Observer but is instead a
PowerManagerClient::RenderProcessManagerDelegate. This guarantees that
the RendererFreezer's suspend related methods will be called only after
all observers have reported ready and before observers are notified that
the suspend has completed. Any race conditions that still exist now
need to be fixed in the observer that is causing it.
BUG=364339
Committed: https://crrev.com/1a085efa9263279b58d6fd06ba991709d598f796
Cr-Commit-Position: refs/heads/master@{#304956}
Patch Set 1 : Reverted CL #Patch Set 2 : Freeze renderers after all observers have reported ready #
Total comments: 4
Patch Set 3 : Address comments #Messages
Total messages: 9 (2 generated)
|