WR crashes on debug_assert! with out-of-process iframes
Categories
(Core :: Graphics: WebRender, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: hsivonen, Assigned: gw)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
Steps to reproduce
- Set
fission.oopif.attribute
totrue
. - Set
gfx.webrender.picture-caching
tofalse
. - Set
gfx.webrender.all
totrue
. - Restart Firefox.
- Navigate to https://hsivonen.fi/fission-scroll.html
Actual results
Assertion crash at https://searchfox.org/mozilla-central/rev/6db0a6a56653355fcbb25c4fa79c6e7ffc6f88e9/gfx/wr/webrender/src/display_list_flattener.rs#1348
Expected results
No crash.
Reporter | ||
Updated•6 years ago
|
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Dzmitry, looks like we will need this for Fission M2 milestone (deadline of May 6).
Comment 2•6 years ago
|
||
Dzmitry is on vacation for the next two weeks. Glenn is a better person to look at this in the mean time.
Assignee | ||
Comment 3•6 years ago
|
||
This assert is checking that the display list by Gecko does not provide multiple stacking contexts which all have picture caching enabled (the cache_tiles
field in push_stacking_context
).
Picture caching currently only works correctly on a single, top-level, stacking context - which is what this assert is checking for.
It's likely that the code in Gecko which determines whether to enable picture caching on a stacking context is getting confused by the OOP iframe and thinking it is a top level window, or something similar.
I notice that the bug specifically is being reproduced when gfx.webrender.picture-caching
is false
. I can make a change so that the assert only triggers when picture caching is enabled, which will stop the assert firing in this test case. However, the root cause of the bug (that Gecko is seemingly supplying an invalid display list) will need to be resolved before picture caching can be enabled in fission mode.
I'll land a patch today that at least only checks the assert if picture caching is enabled.
Assignee | ||
Comment 4•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Pushed by gwatson@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a9c4558b4975 WR crashes on debug_assert! with out-of-process iframes r=jrmuizel
Comment 6•6 years ago
|
||
bugherder |
Reporter | ||
Comment 7•6 years ago
|
||
(In reply to Glenn Watson [:gw] from comment #3)
I notice that the bug specifically is being reproduced when
gfx.webrender.picture-caching
isfalse
.
That's due to bug 1527380.
I'll land a patch today that at least only checks the assert if picture caching is enabled.
Thanks.
Updated•3 years ago
|
Updated•3 years ago
|
Description
•