From 903f313d8b6e85c031fc5918273ff4800fa9f952 Mon Sep 17 00:00:00 2001 From: Michael Anthony Knyszek Date: Fri, 29 Oct 2021 17:58:42 +0000 Subject: [PATCH] runtime: fix unclosed GCSweepStart trace event CL 333389 erroneously moved traceGCSweepDone inside the sl.valid block that it introduced in mcentral.cacheSpan, when it should have left it outside that scope, because the trace event is created unconditionally at the top of the method. Fixes #49231. Change-Id: If719c05063d4f4d330a320da6dc00d1e9d8102e4 Reviewed-on: https://go-review.googlesource.com/c/go/+/359775 Trust: Michael Knyszek Run-TryBot: Michael Knyszek Reviewed-by: Michael Pratt TryBot-Result: Go Bot --- src/runtime/mcentral.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/runtime/mcentral.go b/src/runtime/mcentral.go index 4ae3a883a4..e4bdf35071 100644 --- a/src/runtime/mcentral.go +++ b/src/runtime/mcentral.go @@ -154,10 +154,10 @@ func (c *mcentral) cacheSpan() *mspan { // See comment for partial unswept spans. } sweep.active.end(sl) - if trace.enabled { - traceGCSweepDone() - traceDone = true - } + } + if trace.enabled { + traceGCSweepDone() + traceDone = true } // We failed to get a span from the mcentral so get one from mheap.