From fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:14:29 +0200 Subject: Merging upstream version 125.0.1. Signed-off-by: Daniel Baumann --- js/src/gc/Sweeping.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'js/src/gc/Sweeping.cpp') diff --git a/js/src/gc/Sweeping.cpp b/js/src/gc/Sweeping.cpp index 3686695978..123b2c9650 100644 --- a/js/src/gc/Sweeping.cpp +++ b/js/src/gc/Sweeping.cpp @@ -2394,6 +2394,14 @@ void GCRuntime::endSweepPhase(bool destroyingRuntime) { MOZ_ASSERT_IF(destroyingRuntime, !useBackgroundThreads); + // Release parallel marking threads for worker runtimes now we've finished + // marking. The main thread keeps the reservation as long as parallel marking + // is enabled. + if (!rt->isMainRuntime()) { + MOZ_ASSERT_IF(useParallelMarking, reservedMarkingThreads != 0); + releaseMarkingThreads(); + } + { gcstats::AutoPhase ap(stats(), gcstats::PhaseKind::DESTROY); -- cgit v1.2.3