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

Issue 769984 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 769988



Sign in to add a comment

Zygote processes load resources (and initialize MaterialDesignController), which isn't desirable for services

Project Member Reported by sky@chromium.org, Sep 28 2017

Issue description

Out of process services launched via chrome are forked from the zygote. The zygote loads resources (and initializes MaterialDesignController). This means any out of process sandboxed services don't start with a clear slate. OTOH unsandboxed out of process services do.

It's tempting to make the services deal with this. But doing that turns out to be mildly painful. This is because there are (at least) two distinct ways out of process services may be launched:

1. As a utility process from chrome.
2. Via service_manager's out of process launching code.

Ideally these two would launch processes in exactly the same manner. Ken mentioned potentially unifying these two areas. I'm filing this bug for completeness as it's blocking making a couple of services sandboxed. I'm passing to Ken as he says these two paths are being unified.
 

Comment 1 by sky@chromium.org, Sep 28 2017

Blocking: 769988

Comment 2 by roc...@chromium.org, Sep 28 2017

I suspect we'll end up wanting multiple zygotes, or for services to even request their own dedicated zygote from the service manager. Part of the reason these things are initialized there is to avoid duplicate effort in every render process we spawn. We may not want to abandon such optimizations, but we also shouldn't impose them on services that don't benefit.
Owner: rockot@google.com

Sign in to add a comment