Open Bug 1751648 Opened 4 years ago Updated 4 years ago

When suspending periodic sampling, pre-record a stack trace to use instead of real stack-walking

Categories

(Core :: Gecko Profiler, task, P3)

task

Tracking

()

People

(Reporter: mozbugz, Unassigned)

References

(Depends on 1 open bug)

Details

Spawned from bug 1749978 comment 7.

In some situation we need to turn off periodic sampling, because it can clash with other functions, e.g., when loading a Windows DLL, using win32 stack-walking functions can lead to deadlocks.
This creates gaps in profiles.

Using bug 1751646, it should be possible to capture a stack from the point where periodic sampling is paused, and during that time each sample would use that pre-recorded stack.

This needs more investigative work first, because the sampling pause applies to all threads in the process, but the point where sampling is paused is in one particular thread, so I'm not sure if pausing just that one thread while other threads keep getting sampled would work.

You need to log in before you can comment on or make changes to this bug.