Chrome Version: 63.0.3239.0
OS: Win/Mac/Linux/ChromeOS
What steps will reproduce the problem?
(1) Start Chrome with --renderer-process-limit=1 --site-per-process
(2) Install two extensions with background pages.
(3) See if the extensions share a process.
What is the expected result?
The extensions should share a process.
What happens instead?
They don't share a process.
ChromeContentBrowserClientExtensionsPart::ShouldLockToOrigin returns true for extensions in --site-per-process, which enables LockToOrigin for them. This is different than what we do normally, and it prevents process sharing because the origin lock check in RenderProcessHostImpl::IsSuitableHost comes before the extension process sharing logic.
Comment 1 by creis@chromium.org
, Oct 14 2017