In headless mode, the RefreshDriver keeps ticking forever "waiting for paint" in the WebExtension process
Categories
(Core :: Graphics, defect)
Tracking
()
People
(Reporter: florian, Unassigned, NeedInfo)
References
Details
Attachments
(1 file)
|
4.51 KB,
patch
|
Details | Diff | Splinter Review |
This was noticed at bug 1742842 comment 5 where I got backed out due to failures in testing/mochitest/tests/python/test_mochitest_integration.py (tests/selftests/browser_pass.js | waiting for vsync to be disabled - timed out after 50 tries.).
Profile of the test failing: https://share.firefox.dev/3zlgzgI (notice the many "RefreshDriverTick waiting for paint" markers in the WebExtension process).
Same test passing when not using --headless: https://share.firefox.dev/3BxXTx0
I'm attaching the debug markers I used for these profiles.
I then noticed that I can reproduce the same issue with any other browser chrome mochitest picked at random. Here I took browser_addCertException.js as an example.
Headless: https://share.firefox.dev/3vrtJra
Normal: https://share.firefox.dev/3Slo3bZ
Comment 1•3 years ago
|
||
The severity field is not set for this bug.
:bhood, could you have a look please?
For more information, please visit auto_nag documentation.
Comment 2•3 years ago
|
||
Seems to be centered in WebExtensions, but that has no triage owner.
Updated•3 years ago
|
Comment 3•3 years ago
|
||
In the headless profile, there's a "Discarded composite - No display list - chrome://extensions/content/dummy.xhtml" marker on the compositor thread: https://share.firefox.dev/3CmvM4h
I don't see such a marker in the normal profile: https://share.firefox.dev/3QTzUfV
My guess is that we don't send a DidComposite notification for the discarded composite. We probably should.
And independently of that, it would be good to find out why the compositor doesn't have a display list for the WebExtension document in the headless case.
| Reporter | ||
Comment 6•2 months ago
|
||
For context, the reason I care about this bug is that this is causing the vsync disabled checks to be skipped for headless mochitests (at https://searchfox.org/firefox-main/rev/3728e0c87fc4fa87ddf0c7a8183f2dd2329be96a/testing/mochitest/browser-test.js#629-633), and I would like to move mochitests to running headless by default, but losing coverage for ensuring vsync is disabled at the end of tests seems unfortunate.
Description
•