"JS XPCOM" profiler marker's stack does not include identifying label
Categories
(Core :: Gecko Profiler, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox85 | --- | fixed |
People
(Reporter: nalexander, Assigned: nalexander)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
I am writing some tests that grub things out of profiles captured by the Gecko profiler, following the models introduced in https://searchfox.org/mozilla-central/source/browser/base/content/test/performance. It appears that the stacks captured by markers don't include labels if the code is structured like it is here, namely:
AUTO_PROFILER_MARKER_TEXT("JS XPCOM", JS, MarkerStack::Capture(), spec);
AUTO_PROFILER_LABEL_DYNAMIC_NSCSTRING("mozJSComponentLoader::LoadModule",
OTHER, spec);
If the marker and label implementation is straightforward, that would make sense: we capture a stack for the marker and the label isn't in place in time. Locally, putting the label first addresses the problem.
If this really is a problem, then there's at least one other place to address, namely here. (I haven't audited the tree to find all invocations of this form.)
Assignee | ||
Comment 1•5 years ago
|
||
We need to have the label in place before placing the marker and
capturing the accompanying stack to be able to identify the loaded JS.
Updated•5 years ago
|
Comment 3•5 years ago
|
||
bugherder |
Updated•4 years ago
|
Updated•4 years ago
|
Description
•