Closed Bug 1372375 Opened 4 years ago Closed 4 years ago

EnsureWalkThreadReady takes locks during the profiler's critical section

Categories

(Core :: Gecko Profiler, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla56
Tracking Status
firefox56 --- fixed

People

(Reporter: away, Assigned: away)

References

Details

Attachments

(1 file)

This was causing failures in automation that are preventing bug 1357829 from getting landed.
EnsureWalkThreadReady takes two locks, one in _beginthreadex and another in the DLL hook setup.

We can avoid the first by not calling EnsureWalkThreadReady if we're walking a suspended thread, since we won't be using a separate WalkThread anyway.

To avoid the hook locks, I gave in and decided to go back to setting up the hooks in DllBlocklist_Initialize as originally planned.
Assignee: nobody → dmajor
Attachment #8876893 - Flags: review?(mstange)
Blocks: 1357829
Attachment #8876893 - Flags: review?(mstange) → review+
Pushed by dmajor@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/ce749cd8209a
Avoid locks in EnsureWalkThreadReady during the profiler's critical section. r=mstange
https://hg.mozilla.org/mozilla-central/rev/ce749cd8209a
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla56
Depends on: 1375662
Depends on: 1376762
Depends on: 1378442
You need to log in before you can comment on or make changes to this bug.