Closed Bug 1745281 Opened 2 years ago Closed 2 years ago

Investigate ways to redirect BASE_PROFILER_MARKER_* markers to Gecko Profiler buffer after it starts

Categories

(Core :: Gecko Profiler, task, P2)

task

Tracking

()

RESOLVED FIXED
99 Branch
Tracking Status
firefox99 --- fixed

People

(Reporter: mozbugz, Assigned: mozbugz)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

If someone uses a BASE_PROFILER_MARKER_* function, the marker is just lost when only the Gecko Profiler is running.
It would be good to use the Gecko Profiler buffer in that case.

I'm thinking that base_profiler_marker_detail::CachedBaseCoreBuffer() could provide the Gecko Profiler buffer once it's alive.

This would be very nice for the markers I added in bug 1524625!

Blocks: 1524625

This would have been very helpful in figuring out faster what was happening in the profile of bug 1747980. I could see quickly that DLLs were being injected, but I could only find the name of the DLL in label frames that weren't as easy to find.

I've managed to get going on bug 1753192, which makes this bug here fairly simple to achieve.

Here's an example from an early prototype, showing "DllLoad" base markers during the whole profiling session: https://share.firefox.dev/34fDi1U

Assignee: nobody → gsquelart

This adds tests about what's already happening with current Base and Gecko Profiler markers.

Depends on D137805

Pushed by gsquelart@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7a041d78df6f
Test base/gecko markers before/during/after base/gecko profiler - r=canaltinova
https://hg.mozilla.org/integration/autoland/rev/d3ade0cdc753
Record base markers whenever the core buffer is in session - r=canaltinova
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 99 Branch
No longer blocks: 1524625
Depends on: 1524625
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: