Closed
Bug 1460495
Opened 7 years ago
Closed 6 years ago
Paints are delayed until the next paint, sometimes (when a canvas is on the screen?)
Categories
(Core :: Graphics: WebRender, defect, P1)
Core
Graphics: WebRender
Tracking
()
RESOLVED
FIXED
mozilla62
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox-esr60 | --- | unaffected |
firefox60 | --- | unaffected |
firefox61 | --- | unaffected |
firefox62 | --- | fixed |
People
(Reporter: mstange, Assigned: kats)
References
()
Details
(Keywords: regression)
Attachments
(1 file)
Steps to reproduce:
1. Open https://perfht.ml/2wt521E and wait for it to load completely.
2. Move your mouse over one of the tree rows.
3. Make sure everything has settled and nothing in the browser is painting.
4. Move your mouse over a different tree row.
Expected results:
The arrow button at the end of the hovered tree row should appear immediately.
Actual results:
It takes about half a second until the arrows shows up.
Similar things can be seen when pressing Ctrl+Shift+1 to start/stop the profiler: While perf-html.io is on the screen, and nothing else is causing paints, the button highlight doesn't update when the profiler state changes, or it updates to show the previous state that you just left, as if it was painting the previous paint.
Comment 1•7 years ago
|
||
It might be similar to Bug 1460432.
Assignee | ||
Comment 2•7 years ago
|
||
Yeah it sounds like bug 1460432. I'll look into it.
Assignee: nobody → bugmail
Depends on: 1460432
Comment 3•7 years ago
|
||
mozregression --good 6f52281bccaa9f7624ec5bfac9e85e41f1928547 --bad 7c83ceac4be6d055bebd870a82b78b76de14b9d7 --pref gfx.webrender.all:true startup.homepage_welcome_url:'https://perfht.ml/2wt521E'
> 8:03.79 INFO: Last good revision: 9554a93583058c35d86878d398d7d4688a3eb86f
> 8:03.79 INFO: First bad revision: 25652d08b28edca783e238dcce7bbad52fc545e1
> 8:03.79 INFO: Pushlog:
> https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=9554a93583058c35d86878d398d7d4688a3eb86f&tochange=25652d08b28edca783e238dcce7bbad52fc545e1
> 25652d08b28e Kartikaya Gupta — Bug 1459686 - Include async image updates in the displaylist transaction. r=sotaro
> b27eadf1b8de Kartikaya Gupta — Bug 1459686 - Refactor to have the ApplyAsyncImages callsite provide the transaction. r=sotaro
> 4869243efd9c ffxbld — Bug 1459686 - Remove WebRenderCommandBuilder::mParentCommands which is always empty. r=sotaro
Blocks: 1459686
Has Regression Range: --- → yes
Has STR: --- → yes
status-firefox60:
--- → unaffected
status-firefox61:
--- → unaffected
status-firefox-esr52:
--- → unaffected
status-firefox-esr60:
--- → unaffected
Keywords: regressionwindow-wanted
OS: Mac OS X → All
Assignee | ||
Comment 4•7 years ago
|
||
This is a result of the second patch from bug 1459686. In that patch, CompositeToTarget ends up sending a transaction and then reusing the TransactionBuilder. But the async-scene-build flag doesn't get set on the new transaction properly. i.e. when we create the TransactionBuilder for the first time, it correctly sets the flag based on [1]. But after sending the transaction the new transaction is created and swapped in at [2] without setting the flag.
[1] https://searchfox.org/mozilla-central/rev/eb6c5214a63e20a3fff455e92c876287a8d2e188/gfx/webrender_bindings/src/bindings.rs#986-993
[2] https://searchfox.org/mozilla-central/rev/eb6c5214a63e20a3fff455e92c876287a8d2e188/gfx/webrender_bindings/src/bindings.rs#1298
Assignee | ||
Comment 5•7 years ago
|
||
The patches on bug 1457466 should actually fix this, but would leave this footgun-ny behaviour in place. So I'll fix it here.
Assignee | ||
Comment 6•7 years ago
|
||
Assignee | ||
Comment 7•7 years ago
|
||
I was able to repro this more easily than bug 1460432 so the STR on this bug are what I used to test. Inverting dependency relationship; I'll put the patch here and we can see if it fixes bug 1460432 as well.
Updated•7 years ago
|
Blocks: stage-wr-trains
Priority: -- → P1
Comment hidden (mozreview-request) |
Comment 9•7 years ago
|
||
mozreview-review |
Comment on attachment 8974799 [details]
Bug 1460495 - When sending a transaction, ensure the new transaction that takes its place has the same async-scene-build flag set.
https://reviewboard.mozilla.org/r/243188/#review249062
Looks good.
Attachment #8974799 -
Flags: review?(sotaro.ikeda.g) → review+
Comment 10•7 years ago
|
||
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/4e38ca9aaa48
When sending a transaction, ensure the new transaction that takes its place has the same async-scene-build flag set. r=sotaro
Comment 11•6 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
You need to log in
before you can comment on or make changes to this bug.
Description
•