Bug 1963506: Mark PerfStats::sCollectionMask as a relaxed ordering atomic. r=mstange

Differential Revision: https://phabricator.services.mozilla.com/D249668
This commit is contained in:
Bas Schouten
2025-05-15 21:02:38 +00:00
committed by bschouten@mozilla.com
parent 1e2a30af40
commit bd16c67061
2 changed files with 4 additions and 2 deletions

View File

@@ -26,7 +26,8 @@ static const char* const sMetricNames[] = {
#undef METRIC_NAME
"Invalid"};
PerfStats::MetricMask PerfStats::sCollectionMask = 0;
Atomic<PerfStats::MetricMask, MemoryOrdering::Relaxed>
PerfStats::sCollectionMask{0};
StaticMutex PerfStats::sMutex;
StaticAutoPtr<PerfStats> PerfStats::sSingleton;

View File

@@ -7,6 +7,7 @@
#ifndef PerfStats_h
#define PerfStats_h
#include "mozilla/Atomics.h"
#include "mozilla/TimeStamp.h"
#include "mozilla/StaticMutex.h"
#include "mozilla/StaticPtr.h"
@@ -168,7 +169,7 @@ class PerfStats {
RefPtr<PerfStatsPromise> CollectPerfStatsJSONInternal();
nsCString CollectLocalPerfStatsJSONInternal();
static MetricMask sCollectionMask;
static Atomic<MetricMask, MemoryOrdering::Relaxed> sCollectionMask;
static StaticMutex sMutex MOZ_UNANNOTATED;
static StaticAutoPtr<PerfStats> sSingleton;
TimeStamp mRecordedStarts[static_cast<uint64_t>(Metric::Max)];