|
|
Created:
4 years, 8 months ago by ncarter (slow) Modified:
4 years, 8 months ago Reviewers:
Devlin CC:
chromium-reviews, chromium-apps-reviews_chromium.org, extensions-reviews_chromium.org, site-isolation-reviews_chromium.org Base URL:
https://chromium.googlesource.com/chromium/src.git@master Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionDisarm LockToOrigin for extensions under --isolate-extensions.
--isolate-extensions actually permits render process reuse, unlike
--site-per-process. This means that "one extension per process" isn't a
valid thing to enforce, which hopefully explains the process kills
we have seen in the wild.
Add a test that exercises this. It fails without the fix.
BUG=600441
TEST=browser_tests
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation
Committed: https://crrev.com/92b0458c1ea209f49ee080151b540611958d7a8d
Cr-Commit-Position: refs/heads/master@{#385947}
Patch Set 1 #
Total comments: 8
Patch Set 2 : Fixes. #Patch Set 3 : Add a stupid cast. #
Messages
Total messages: 22 (12 generated)
Description was changed from ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests ========== to ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests ==========
Description was changed from ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests ========== to ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation ==========
The CQ bit was checked by nick@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1867683002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1867683002/1
nick@chromium.org changed reviewers: + rdevlin.cronin@chromium.org
Hi Devlin, please review this change.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/c... File chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc (right): https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/c... chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc:223: // above, in ShouldTryToUseExistingProcessHost) means that extension nit: actually implemented below, right? Might be worth just saying "implemented in Should..." https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... File chrome/browser/extensions/process_manager_browsertest.cc (right): https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:539: for (int i = 1; i <= 3; i++) { nit: ++i https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:546: EXPECT_EQ(GURL("chrome-extension://" + extension->id()), nit: extension->url() https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:552: EXPECT_EQ(3U, installed_extensions.size()); given the number of 3us here, it might be more readable to have a const size_t kNumExtensions = 3u;
https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/c... File chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc (right): https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/c... chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc:223: // above, in ShouldTryToUseExistingProcessHost) means that extension On 2016/04/07 15:06:37, Devlin wrote: > nit: actually implemented below, right? Might be worth just saying "implemented > in Should..." Done. https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... File chrome/browser/extensions/process_manager_browsertest.cc (right): https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:539: for (int i = 1; i <= 3; i++) { On 2016/04/07 15:06:37, Devlin wrote: > nit: ++i Done. https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:546: EXPECT_EQ(GURL("chrome-extension://" + extension->id()), On 2016/04/07 15:06:37, Devlin wrote: > nit: extension->url() Done. https://codereview.chromium.org/1867683002/diff/1/chrome/browser/extensions/p... chrome/browser/extensions/process_manager_browsertest.cc:552: EXPECT_EQ(3U, installed_extensions.size()); On 2016/04/07 15:06:37, Devlin wrote: > given the number of 3us here, it might be more readable to have a > const size_t kNumExtensions = 3u; Done.
The CQ bit was checked by nick@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from rdevlin.cronin@chromium.org Link to the patchset: https://codereview.chromium.org/1867683002/#ps20001 (title: "Fixes.")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1867683002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1867683002/20001
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_compile_dbg_32_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_gn_chromeos_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by nick@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from rdevlin.cronin@chromium.org Link to the patchset: https://codereview.chromium.org/1867683002/#ps40001 (title: "Add a stupid cast.")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1867683002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1867683002/40001
Message was sent while issue was closed.
Description was changed from ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation ========== to ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation ==========
Message was sent while issue was closed.
Committed patchset #3 (id:40001)
Message was sent while issue was closed.
Description was changed from ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation ========== to ========== Disarm LockToOrigin for extensions under --isolate-extensions. --isolate-extensions actually permits render process reuse, unlike --site-per-process. This means that "one extension per process" isn't a valid thing to enforce, which hopefully explains the process kills we have seen in the wild. Add a test that exercises this. It fails without the fix. BUG=600441 TEST=browser_tests CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/92b0458c1ea209f49ee080151b540611958d7a8d Cr-Commit-Position: refs/heads/master@{#385947} ==========
Message was sent while issue was closed.
Patchset 3 (id:??) landed as https://crrev.com/92b0458c1ea209f49ee080151b540611958d7a8d Cr-Commit-Position: refs/heads/master@{#385947} |