Closed Bug 1347059 Opened 8 years ago Closed 8 years ago

GeckoProfiler re-entry and dead locked during StopProfiler()

Categories

(Core :: Gecko Profiler, enhancement)

enhancement
Not set
major

Tracking

()

RESOLVED DUPLICATE of bug 1346356
Tracking Status
firefox55 --- affected

People

(Reporter: sinker, Unassigned)

Details

|nsProfiler::StopProfiler()| would caused a re-entry for notifying observers of the subject "profiler-stopped" before it's deactivated is complete. see https://dxr.mozilla.org/mozilla-central/rev/f9362554866b327700c7f9b18050d7b7eb3d2b23/tools/profiler/core/platform.cpp#2366 It causes |profiler_get_backtrace()| has been called by |nsRefreshDriver::AddLayoutFlushObserver()|. |gPSMutex| will be acquired here again while |profiler_stop()| is still holding the mutex.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.