Closed Bug 1272277 Opened 8 years ago Closed 8 years ago

Device resets lead to constant full-page invalidation

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla49
Tracking Status
firefox49 --- fixed

People

(Reporter: eflores, Assigned: eflores)

References

Details

Attachments

(2 files)

Device resets throw us into bizzaro invalidate-all-the-things-all-the-time mode.

Becomes very obvious forcing a device reset with paint flashing on.
Attached patch 1272277-1.patchSplinter Review
If the current device counter is different from the last count that ClientLayerManager saw, then invalidate everything.

Except the last count was never updated, causing us to hit this every time. Oops.
Attachment #8751690 - Flags: review?(nical.bugzilla)
Attached patch 1272277-2.patchSplinter Review
That led to breakage when switching back from the MS Basic Render Driver to actual hardware. It seems that not all instances of the Basic Renderer ID3D11Device on the system know about the reset at the same time -- that is, calling GetDeviceRemovedReason on similar ID3D11Devices in two different processes around the same time can return different results.

So force a content device reset when the parent compositor is updated.
Attachment #8751691 - Flags: review?(nical.bugzilla)
Attachment #8751690 - Flags: review?(nical.bugzilla) → review+
Attachment #8751691 - Flags: review?(nical.bugzilla) → review+
https://hg.mozilla.org/mozilla-central/rev/beb7305d0d5f
https://hg.mozilla.org/mozilla-central/rev/02cb93a3dbf1
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: