Closed Bug 1961115 Opened 4 months ago Closed 4 months ago

We don't completely suppress presenting snapshot/offscreen frames

Categories

(Core :: Graphics: WebRender, task, P3)

task

Tracking

()

RESOLVED FIXED
139 Branch
Tracking Status
firefox139 --- fixed

People

(Reporter: nical, Assigned: nical)

References

Details

(Whiteboard: [viewtransitions:m1:gfx])

Attachments

(3 files, 1 obsolete file)

Moving the patches from bug 1959648 here to split the WebRender and displaylist work and land what's already landable.

WebRender currently correctly skips compositing frames that don't have the present flag set, but we still run some widget/compositor code that we should not, including swapping buffers and that's not good.

This patch is a preliminary refactoring to make it simpler to pass additional information to the C++ side and should not affect behavior.
In a followup patch the widget glue will have special handling for frames that need to be rendered but not presented.

Whiteboard: [viewtransitions:triage]

In addition, rename NotifyDidSceneBuild into ScheduleFrameAfterSceneBuild. Right now it is only used for that purpose but it would cause issues if we start relying on it to be called after all scene builds since with this patch we won't call it if we do not need a new frame.

Status: NEW → ASSIGNED
Whiteboard: [viewtransitions:triage] → [viewtransitions:m1:gfx]
Pushed by nsilva@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/12836f4f3c36 Pass new_frame_ready parameters via a struct. r=gfx-reviewers,gw https://hg.mozilla.org/integration/autoland/rev/9f795cb0c6ae Skip compositor-related work when rendering without presenting. r=gfx-reviewers,gw https://hg.mozilla.org/integration/autoland/rev/272e5fda747a Avoid scheduling an extra frame when a transaction is rendered immediately. r=gfx-reviewers,lsalzman

Backed out 3 changesets (Bug 1961115) for causing build bustages.

Push with failures

Failure log

Backout link

Flags: needinfo?(nical.bugzilla)
Attachment #9479881 - Attachment is obsolete: true
Flags: needinfo?(nical.bugzilla)
Pushed by nsilva@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9099f91a9ce6 Pass new_frame_ready parameters via a struct. r=gfx-reviewers,gw https://hg.mozilla.org/integration/autoland/rev/65568cbb4e4b Skip compositor-related work when rendering without presenting. r=gfx-reviewers,gw https://hg.mozilla.org/integration/autoland/rev/9def00d6fd0f Avoid scheduling an extra frame when a transaction is rendered immediately. r=gfx-reviewers,lsalzman
Status: ASSIGNED → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → 139 Branch
QA Whiteboard: [qa-triage-done-c140/b139]
Regressions: 1969253
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: