Watch for checkpoint activity whenever a thread blocks on the helper thread state lock

RESOLVED FIXED in Firefox 64

Status

()

enhancement
RESOLVED FIXED
8 months ago
8 months ago

People

(Reporter: bhackett, Assigned: bhackett)

Tracking

Trunk
mozilla64
Points:
---

Firefox Tracking Flags

(firefox64 fixed)

Details

Attachments

(1 attachment)

Assignee

Description

8 months ago
Posted patch patchSplinter Review
The crash below (reported by :jlast) is due to a hang in a replaying process.  The main thread is waiting for all other threads to become idle, and the only other thread which isn't is a worker thread that is doing a GC and is blocked while waiting for its off thread tasks to finish.  Those tasks will not finish, because the helper threads are all in the idle state needed by the main thread.

https://crash-stats.mozilla.com/report/index/ed53ae11-7dff-4dcf-831e-a1d590180929

The attached patch takes the logic used by the helper threads to coordinate with the record/replay system when they are about to wait for an incoming task, and applies it to all places where another thread (including another helper thread) might block while waiting for a helper thread task to complete.
Attachment #9013126 - Flags: review?(jdemooij)
Attachment #9013126 - Flags: review?(jdemooij) → review+

Comment 1

8 months ago
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b148d2cc2558
Watch for checkpoint activity whenever a thread blocks on the helper thread state lock, r=jandem.

Comment 2

8 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/b148d2cc2558
Status: NEW → RESOLVED
Last Resolved: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
You need to log in before you can comment on or make changes to this bug.