Closed Bug 1494173 Opened 6 years ago Closed 6 years ago

WebRender seems to be holding on to tiles outside of a blob's visible area

Categories

(Core :: Graphics: WebRender, defect, P2)

defect

Tracking

()

RESOLVED FIXED
Tracking Status
firefox64 --- affected

People

(Reporter: mstange, Assigned: nical)

References

Details

Attachments

(1 file)

Attached file testcase
In this testcase, the display port does not cover the entire scrollable area of the page. Consequently, if you scroll to the bottom of the page, the parts of the blob image that are at the top of the page should be discarded. As you scroll back up, they should be repainted.

However, both blob.paint-flashing and the "Texture data, kb" measurement in the WebRender profiler show that tiles are rasterized on demand when scrolling down, but no new tiles get rasterized when scrolling back up: The tiles at the top seem to be kept around.

This is unexpected. Tiles outside of a blob's visible area are invalid and should be discarded by WebRender.

Making the testcase wider and taller (and thus using more tiles) causes tiles to be discarded as expected. But at this blob size (and at my screen size and my @2x device pixel ratio), no discarding seems to happen.
Priority: -- → P3
Priority: P3 → P2
We are discarding the the rasterized blob image but not the cached texture handle. I'll put up a patch soon.
Assignee: nobody → nical.bugzilla
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: