Closed Bug 1460289 Opened 2 years ago Closed 2 years ago

Deadlock with async scene building

Categories

(Core :: Graphics: WebRender, enhancement)

Other Branch
enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla62
Tracking Status
firefox62 --- fixed

People

(Reporter: kats, Assigned: kats)

References

(Blocks 1 open bug)

Details

(Whiteboard: [gfx-noted])

Attachments

(2 files)

Attached file Thread backtraces
I ran into a deadlock on nightly, the root cause is that we hold the sIndirectLayerTrees lock in RecvAdoptChild when we clone the WebRenderAPI. That blocks on the render backend thread, which is blocked on the scene builder thread, which is trying to acquire the sIndirectLayerTreesLock.

Thread stacks attached.

The fix should be to not hold the sIndirectLayerTreesLock while cloning the WebRenderAPI.
Comment on attachment 8974502 [details]
Bug 1460289 - Reduce scope of indirect layer tree lock in RecvAdoptChild.

https://reviewboard.mozilla.org/r/242828/#review248764

good catch!
Attachment #8974502 - Flags: review?(sotaro.ikeda.g) → review+
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fc2188a4b2d9
Reduce scope of indirect layer tree lock in RecvAdoptChild. r=sotaro
https://hg.mozilla.org/mozilla-central/rev/fc2188a4b2d9
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
You need to log in before you can comment on or make changes to this bug.