[Android Fission] Failures in toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js | single tracking bug
Categories
(WebExtensions :: General, defect)
Tracking
(firefox126 fixed)
| Tracking | Status | |
|---|---|---|
| firefox126 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: robwu)
References
Details
(Keywords: intermittent-testcase, Whiteboard: [fxdroid][addons-jira])
Attachments
(1 file)
Filed by: istorozhko [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=450963264&repo=try
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/eR00iwCLSvWiYzL-EwWEsQ/runs/0/artifacts/public/logs/live_backing.log
There are three failures for this test on Android Fission (with the mobile-specific High Value isolation strategy, i.e. `fission.webContentIsolationStrategy` pref set to `2`; both X and X-cf variants):
1. `TEST-UNEXPECTED-FAIL | xpcshell.toml:toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js | xpcshell return code: 0`
2. `TEST-UNEXPECTED-FAIL | xpcshell.toml:toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js | test_process_switch_cross_origin_frame - [test_process_switch_cross_origin_frame : 55] 1 != 1`
3. `TEST-UNEXPECTED-FAIL | xpcshell.toml:toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js | test_process_switch_cross_origin_frame - [test_process_switch_cross_origin_frame : 66] Extension left running at test shutdown - "running" == "unloaded"`
Updated•2 years ago
|
Comment 1•2 years ago
|
||
Fails on both variants, X and X-cf, on all Android builds with Fission enabled, with fission.webContentIsolationStrategy set to 2 (mobile-specific isolation strategy)
Updated•2 years ago
|
| Assignee | ||
Comment 2•2 years ago
|
||
The log message shows something interesting,
There are three failures for this test on Android Fission (with the mobile-specific High Value isolation strategy, i.e.
fission.webContentIsolationStrategypref set to2; both X and X-cf variants):
I can reproduce locally on desktop as follows:
./mach xpcshell-test toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js --verbose --log-mach-verbose --sequential --setpref=fission.webContentIsolationStrategy=2
Now, potential values of this pref are documented at https://searchfox.org/mozilla-central/rev/f8258e49f277c1c881c5c0da95f463dd12b7397e/dom/ipc/ProcessIsolation.cpp#49-68 is:
// All web content is loaded into a shared `web` content process. This is
// similar to the non-Fission behaviour, however remote subframes may still
// be used for sites with special isolation behaviour, such as extension or
// mozillaweb content processes.
IsolateNothing = 0,
// Web content is always isolated into its own `webIsolated` content process
// based on site-origin, and will only load in a shared `web` content process
// if site-origin could not be determined.
IsolateEverything = 1,
// Only isolates web content loaded by sites which are considered "high
// value". A site is considered "high value" if it has been granted a
// `highValue*` permission by the permission manager, which is done in
// response to certain actions.
IsolateHighValue = 2,
The value of 2 thus implies that the "separate processes for subframes" aspect of Fission is NOT enabled for ALL sites, in particular not the test case in question. Thus the test fails because it detects that the iframe is in the same process as the parent, at https://searchfox.org/mozilla-central/rev/f8258e49f277c1c881c5c0da95f463dd12b7397e/toolkit/components/extensions/test/xpcshell/test_ext_contentscript_xorigin_frame.js#37-42,46-49,54-55
I think that a potential way to resolve this failure is to check that the fission.webContentIsolationStrategy pref is not 0 or 2 before treating remoteSubFrames as true near https://searchfox.org/mozilla-central/rev/f8258e49f277c1c881c5c0da95f463dd12b7397e/testing/modules/XPCShellContentUtils.sys.mjs#103,117
| Assignee | ||
Comment 3•2 years ago
|
||
Updated•2 years ago
|
| Assignee | ||
Updated•2 years ago
|
| Assignee | ||
Comment 4•2 years ago
|
||
Marking as dependency of bug 1888235; I have to wait until the patch in the other bug lands (which adds a skip-if) and then update the patch here to remove the skip-if.
Comment 6•2 years ago
|
||
| bugherder | ||
Description
•