Text corruption when scrolling down in colorjs.io
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox86 | --- | unaffected |
firefox87 | --- | fixed |
firefox88 | --- | fixed |
People
(Reporter: emilio, Assigned: lsalzman)
References
(Regression, )
Details
(Keywords: regression)
Attachments
(2 files)
269.99 KB,
image/png
|
Details | |
48 bytes,
text/x-phabricator-request
|
jcristau
:
approval-mozilla-beta+
|
Details | Review |
Seems to happen reliably (yay)
Comment 2•4 years ago
|
||
I can reproduce this locally.
However, although the referenced patch (bug 1684781) results in it occurring, the problem appears to be caused by bug 1691859.
The mix-blend
on the page that is corrupted is a multiply
which runs through the fast path enabled in bug 1691859 (it doesn't hit the new mix-blend code path in bug 1684781). However, bug 1684781 does result in the advanced dual-source mix-blend occurring directly on a picture cache tile instead of an off-screen surface, perhaps exposing some kind of driver bug or similar (or a bug in the WR advanced blend impl).
Bug 1693998 was a previously reported regression with the same symptoms, that was also caused by bug 1691859. We thought that bug 1684781 fixed that issue, but it just seems to make it occur in different circumstances.
I think that until we understand better what's going on, we should reluctantly disable the advanced blend path in bug 1691859. I've verified that without that, neither of the reported regressions occur with the other mix-blend patch that I landed. Thoughts Lee?
Comment 3•4 years ago
|
||
Confirmed that this also occurs with SWGL enabled, so it must be a bug in the advanced blend equation code path, rather than a driver issue. I still think the safest bet for now is to disable that advanced blend path, since it's in beta.
Assignee | ||
Comment 4•4 years ago
|
||
Updated•4 years ago
|
Assignee | ||
Comment 5•4 years ago
|
||
Emilio, can you try my patch and verify if it fixes the issue for you?
It appears there was just a small innocuous bug in the original advanced blend equation code, where it chose raster-space local, instead of raster-space screen. Not sure if that was the right thing to do at the time, but right now it definitely needs to be raster-space screen to properly read the right UVs for the primitive in the shader. It stood out as a "one of these things is not like the others" the minute Glenn and I spotted it in the code.
Comment 7•4 years ago
|
||
Backed out changeset 140002ffa867 (Bug 1695807) for causing reftest failures.
Backout link: https://hg.mozilla.org/integration/autoland/rev/8f9de8c6d2207a513d9685fb0825c913e3ae6242
Push with failures
Failure logs:
Updated•4 years ago
|
Reporter | ||
Comment 8•4 years ago
|
||
Yes, the patch fixes the issue. All those failures look like actually passes, so I relanded with the fuzzy annotations removed.
Reporter | ||
Updated•4 years ago
|
Updated•4 years ago
|
Comment 10•4 years ago
|
||
Comment 11•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/aa752a99fe85
https://hg.mozilla.org/mozilla-central/rev/85db133d8b52
Assignee | ||
Comment 12•4 years ago
|
||
Comment on attachment 9206268 [details]
Bug 1695807 - Mix blend image brush data should be RasterizationSpace::Screen. r=gw
Beta/Release Uplift Approval Request
- User impact if declined: Visual artifacts in many sites that use mix-blend-mode in their CSS.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): Fixes a long-standing bug in in mix-blend-mode support in WebRender, but doesn't add new features or semantics.
- String changes made/needed:
Comment 13•4 years ago
|
||
This bug is marked as regressed by https://hg.mozilla.org/integration/autoland/rev/23bd3cec784397ac9ce2d1d69fda2aa334ed9515 which landed in 88. Is beta actually affected?
Comment 14•4 years ago
|
||
Set release status flags based on info from the regressing bug 1684781
Assignee | ||
Comment 15•4 years ago
|
||
(In reply to Julien Cristau [:jcristau] from comment #13)
This bug is marked as regressed by https://hg.mozilla.org/integration/autoland/rev/23bd3cec784397ac9ce2d1d69fda2aa334ed9515 which landed in 88. Is beta actually affected?
Yes
Comment 16•4 years ago
|
||
(In reply to Julien Cristau [:jcristau] from comment #13)
This bug is marked as regressed by https://hg.mozilla.org/integration/autoland/rev/23bd3cec784397ac9ce2d1d69fda2aa334ed9515 which landed in 88. Is beta actually affected?
From comment #2, it sounds like this was actually regressed by bug 1691859, which landed in Firefox 87.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 17•4 years ago
|
||
Comment on attachment 9206268 [details]
Bug 1695807 - Mix blend image brush data should be RasterizationSpace::Screen. r=gw
approved for 87.0b8
Comment 18•4 years ago
|
||
bugherder uplift |
Description
•