Closed Bug 1918097 Opened 5 months ago Closed 5 months ago

Add profiler markers for Glean::CounterMetric

Categories

(Toolkit :: Telemetry, task)

task

Tracking

()

RESOLVED FIXED
132 Branch
Tracking Status
firefox132 --- fixed

People

(Reporter: aabh, Assigned: aabh)

References

Details

Attachments

(2 files)

No description provided.
Attachment #9424129 - Attachment description: WIP: Bug 1918097 - Add profiler markers for Glean::CounterMetric, and name lookup function r?chutten,florian → Bug 1918097 - Add profiler markers for Glean::CounterMetric, and name lookup function r?chutten,florian
Pushed by abrouwersharries@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ad87df541795 Add profiler markers for Glean::CounterMetric, and name lookup function r=chutten,florian,canaltinova
No longer blocks: 1918172, 1918191, 1918716
Backout by nfay@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a2b3201696a3 Backed out 3 changesets (bug 1918097, bug 1918191, bug 1918172) for causing xpcshell crashes on test_logFromPreference.js CLOSED TREE

I was randomly testing adding Services.profiler.Pause(); to xpcom/tests/unit/test_logFromPreference.js right before we call Services.profiler.getProfileDataAsync and it seems like it's fixing the crash. See the try run here: https://treeherder.mozilla.org/jobs?repo=try&revision=df94ddbef3010569504409777f6dc7512ab92f18

So it looks like a memory corruption during the profiler profile capture when we don't pause the profiler. It's likely that we are writing to somewhere we shouldn't or we are not managing the lifetime of an object properly for these cases? So we definitely need to investigate this memory corruption inside the rust marker API. But considering that we already have markers (with and without payloads) in the tree, I suggest we:

  1. Fix the test by adding a pause right before we capture the profile and continue landing these patches, without disabling the markers in Android.
  2. Add a debug assert to profile collection to make sure the profiler is paused already. Note that this might generate some assert failures in some test, so we need to fix them by adding some Pause calls to those tests as well.
  3. File a bug about this memory corruption so we can investigate it.
Flags: needinfo?(abrouwersharries)
Pushed by abrouwersharries@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4f847cf0a431 Pause the profiler to avoid racy memory corruption r=florian
Flags: needinfo?(abrouwersharries)
Status: ASSIGNED → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → 132 Branch
Pushed by abrouwersharries@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a7c54e7ceaed Add profiler markers for Glean::CounterMetric, and name lookup function r=chutten,florian,canaltinova
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: