Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upgfx: Implement display-list-based invalidation. #6213
Conversation
hoppipolla-critic-bot
commented
May 28, 2015
|
Critic review: https://critic.hoppipolla.co.uk/r/5123 This is an external review system which you may optionally use for the code review of your pull request. In order to help critic track your changes, please do not make in-place history rewrites (e.g. via |
waddlesplash
commented
May 29, 2015
|
Just curious: do you have any numbers for how much faster this can be / is in practice? |
|
|
|
Review status: all files reviewed, 4 unresolved discussions, some commit checks failed.
components/compositing/compositor.rs, line 658 [r2] (raw file): components/compositing/compositor.rs, line 680 [r2] (raw file): components/compositing/compositor.rs, line 1241 [r2] (raw file): components/gfx/display_list/invalidation.rs, line 316 [r2] (raw file): Comments from the review on Reviewable.io |
|
@pcwalton This seems to break the 3d transforms demos (stuff clips and doesn't update). I'll do some more investigation. tests/ref/iframe/positioning_margin is also failing with this PR (on my laptop at least). |
|
@pcwalton I looked briefly into this - it appears to suffer the same problems as we currently have with clipping on 3d layers. How about updating this PR to disable DLBI on 3d layers (like we do for clipping currently)? That way, we can get this merged since it is useful for 2d layers anyway, and when I get to supporting clipping for 3d layers, I can also fix up the DLBI on 3d layers then? |
|
|
|
Rebased and attempted to turn this off for 3D layers. @glennw How does this look? |
|
|
|
@pcwalton Looks good to me, just needs a rebase. |
|
@bors-servo: r=glennw |
|
@bors-servo: retry They may be intermittent. I'm going to retry to see if they are. |
|
|
|
OK, so |
|
Actually, IIRC they're both intermittent; it's just that the iframe ones fail more often. I worry that DLBI is making our known compositor races worse :( |
|
|
|
@bors-servo: r=glennw |
|
|
gfx: Implement display-list-based invalidation. This ensures that we don't throw away all tiles if only a few of them need to be repainted. You can test this with something like `servo -s 64 -Z paint-flashing tests/html/dlbi.html` and mousing over the button. Requires servo/rust-layers#167 to land first. r? @glennw <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6213) <!-- Reviewable:end -->
|
|
|
|
That was the reftest I fixed… maybe it's a Linux-only failure now? |
|
|
|
@pcwalton Should we close this and re-open it when you have time to look at this again? |
|
Yeah, sure. |
pcwalton commentedMay 28, 2015
This ensures that we don't throw away all tiles if only a few of them need to be repainted. You can test this with something like
servo -s 64 -Z paint-flashing tests/html/dlbi.htmland mousing over the button.Requires servo/rust-layers#167 to land first.
r? @glennw