[Fission] Consider OriginAttributes when selecting processes
Categories
(Core :: DOM: Content Processes, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: pbone, Assigned: annyG)
References
(Blocks 1 open bug)
Details
Attachments
(2 files)
This is a feature idea/request. I'd like to know what others think.
Current behaviour:
I opened google.com/calendar in two tabs, one is in my "Personal" container and the other is in no container (the default container?). When I hover over their tabs I see the same PID on each of them. I have fission enabled.
Expected behaviour:
I should see different PIDs in their tabs. This may help with real isolation but it may also help users trust both fission and container tabs.
Updated•4 years ago
|
Comment 1•4 years ago
|
||
Nika agrees, though this bug doesn't need to block Fission MVP.
Comment 2•4 years ago
|
||
Correction: kmag says we need to fix this bug for private browsing tabs. We need to fix this for origins with different origin attributes in general, but private browsing is the most pressing reason.
Tracking for Fission Nightly milestone (M6)
Updated•4 years ago
|
Comment hidden (typo) |
Comment hidden (typo) |
Comment 5•4 years ago
|
||
Info from Nika for fixing this:
- We need to fix all callsites for getRemoteTypeForURI and getRemoteTypeForURIObject by passing in optional origin attributes (see https://searchfox.org/mozilla-central/rev/b4f3ce16c5099cf068fb023341959a0457adec9e/toolkit/modules/E10SUtils.jsm#235).
- We should probably filter out
firstPartyDomain
,isIsolatedMozBrowser
, andpartitionKey
from OriginAttributes used for process selection (only includeuserContextId
,privateBrowsingId
, andgeckoViewSessionConetxtId
). - We will need to audit all call-sites of related methods to make sure to pass in the correct OA values.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 7•4 years ago
|
||
Nika, I am thinking of modifying the remote type to add OA at the end, so that our current remote type + selected values from OA are used as the key in our <remoteType: content process> map. Does this sound like a correct direction to you? I haven't figured out the exact details, but maybe new remote type could look something like this: webIsolated=https://example.com,pb=1
, webIsolated=https://example.com,userContext=1
- I'll think more about this :)
I am currently auditing various callsites for getRemoteTypeForURI
and getRemoteTypeForURIObject
and trying to find a way to retrieve OA in each case. After that I might begin writing some test cases so I can better understand what kind of behaviour is expected and what kind of edge cases I have to address.
Comment 8•4 years ago
|
||
We shouldn't need to add a new way to attach the OA to the end of the origins, we already have a way to do it in how we define origins. Once you've changed callsites to getRemoteTypeForURI
and getRemoteTypeForURIObject
to accept originAttributes
, we can replace the OAs here (https://searchfox.org/mozilla-central/rev/ff82c973f8ccb0475ec32439e9ec07014b3a681f/toolkit/modules/E10SUtils.jsm#227-231), with the ones passed in and it should work.
That will generate remote types like webIsolated=https://example.com^privateBrowsingId=1
or webIsolated=https://example.com^userContextId=5
:-)
Assignee | ||
Comment 9•3 years ago
|
||
Assignee | ||
Comment 10•3 years ago
|
||
Depends on D101073
Comment 11•3 years ago
|
||
Pushed by agakhokidze@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/023a9d837f49 Part 1: Pass OriginAttributes to be included with remote type, r=nika,marionette-reviewers https://hg.mozilla.org/integration/autoland/rev/5b747d5eaf90 Part 2: Test that we include OriginAttributes in remoteType with Fission enabled, r=nika
Comment 12•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/023a9d837f49
https://hg.mozilla.org/mozilla-central/rev/5b747d5eaf90
Comment 13•3 years ago
|
||
Heads up, possible breakage with this!
Latest nightly build from heftig's archlinux repo (https://pkgbuild.com/~heftig/repo/x86_64/) (firefox-nightly-86.0a1+20210120+h0478698744b1-1) dated on 20-Jan-2021 08:13 seems to break restoring websites from restore session when fission is enabled. I was working fine day before and according to https://mrotherguy.github.io/fx-nightly-changelog/changes/2021/01/2021-01-20.html there weren't many fission changes made to firefox.
The way breakage manifests itself is permanent loading symbol and no content being displayed. If the tab or pinned tab is closed and then undo close tab is selected, the tab does open and display itself.
Comment 14•3 years ago
|
||
(In reply to Mel from comment #13)
Heads up, possible breakage with this!
Latest nightly build from heftig's archlinux repo (https://pkgbuild.com/~heftig/repo/x86_64/) (firefox-nightly-86.0a1+20210120+h0478698744b1-1) dated on 20-Jan-2021 08:13 seems to break restoring websites from restore session when fission is enabled. I was working fine day before and according to https://mrotherguy.github.io/fx-nightly-changelog/changes/2021/01/2021-01-20.html there weren't many fission changes made to firefox.
The way breakage manifests itself is permanent loading symbol and no content being displayed. If the tab or pinned tab is closed and then undo close tab is selected, the tab does open and display itself.
Thank you, Mel. This sounds like bug 1687616, which was found to be a regression from bug 1673683, which was backed out today.
Mel, would you be able to test tomorrow's nightly and see if this is still reproducible?
Comment 15•3 years ago
|
||
Mel, would you be able to test tomorrow's nightly and see if this is still reproducible?
Sure thing.
Comment 16•3 years ago
|
||
(In reply to Neha Kochar [:neha] from comment #14)
(In reply to Mel from comment #13)
Heads up, possible breakage with this!
Latest nightly build from heftig's archlinux repo (https://pkgbuild.com/~heftig/repo/x86_64/) (firefox-nightly-86.0a1+20210120+h0478698744b1-1) dated on 20-Jan-2021 08:13 seems to break restoring websites from restore session when fission is enabled. I was working fine day before and according to https://mrotherguy.github.io/fx-nightly-changelog/changes/2021/01/2021-01-20.html there weren't many fission changes made to firefox.
The way breakage manifests itself is permanent loading symbol and no content being displayed. If the tab or pinned tab is closed and then undo close tab is selected, the tab does open and display itself.Thank you, Mel. This sounds like bug 1687616, which was found to be a regression from bug 1673683, which was backed out today.
Mel, would you be able to test tomorrow's nightly and see if this is still reproducible?
Confirming that it works fine with the latest build and fission enabled.
Description
•