• Alex Moshchuk's avatar
    Stop trying to reuse processes for web iframes on extension pages. · 9c9e3887
    Alex Moshchuk authored
    There's evidence that some web iframes embedded on extension
    background pages may be doing a lot of work with the assumption that
    since this work isn't on a foreground tab, it doesn't need to be
    optimized for responsiveness.  However, OOPIFs currently use an
    aggressive process reuse policy, which also affects this use case,
    making it possible for a web iframe on an extension to get into
    another tab's process and adversely affect its performance.  This CL
    avoids using that reuse policy for web iframes on extensions.
    
    Caveats:
    
    - When over the process limit, web iframes on extensions will still
      attempt to reuse an existing process.
    
    - OOPIFs from normal tabs may still join processes for web iframes on
      extensions.  This and the previous point imply that there won't be a
      guarantee of perfect performance isolation for web iframes on
      extensions; the goal is to be more resilient to problems in the
      common case.
    
    - We will stop potentially useful process reuse between same-site
      iframes on multiple instances of extensions, even for instances of
      the same extension.  We expect this to be rare in practice though.
    
    Bug: 899418, 899838
    Change-Id: I35f6ecc1945292f9fab1c21f65d1ac4b7970dbe3
    Reviewed-on: https://chromium-review.googlesource.com/c/1306410Reviewed-by: default avatarCharlie Reis <creis@chromium.org>
    Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
    Commit-Queue: Alex Moshchuk <alexmos@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#605028}
    9c9e3887
site_details_browsertest.cc 53.6 KB