Closed Bug 1266396 Opened 3 years ago Closed 3 years ago

Make TextureClient more robust against racy shutdown situations

Categories

(Core :: Graphics: Layers, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla49
Tracking Status
firefox49 --- fixed

People

(Reporter: nical, Assigned: nical)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

As discussed with Bas, Jamie and Edwin, the plan is to protect TextureClient's methods that access mData or mActor with a mutex and hold on to that mutex while the TextureData is locked so that shutdown cannot race with some other thread reading from a texture.
Assignee: nobody → nical.bugzilla
Blocks: 1264293
I ended up putting the lock on the IPDL actor to reduce the likelihood of AsTextureClient() racing with the destruction of a texture from another thread. It's not entirely race-free however, but removing the few cycles that constitute that race a lot of work so I'd rather we do it as a followup considering this patch should improve the situation significantly.
Attachment #8743866 - Flags: review?(bas)
Attachment #8743866 - Flags: review?(bas) → review+
https://hg.mozilla.org/mozilla-central/rev/744c91c9c803
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
Depends on: 1283375
You need to log in before you can comment on or make changes to this bug.