From 0e4e2e68323df08d9e4c876e5abc5b549bd247f5 Mon Sep 17 00:00:00 2001 From: Michael Anthony Knyszek Date: Thu, 2 Oct 2025 19:15:34 +0000 Subject: [PATCH] runtime: skip TestGoroutineLeakProfile under mayMoreStackPreempt This may be the long-term fix, but we first need to understand if this just makes the tests flaky, or if it's revealing an actual underlying issue. I'm leaning toward the former. If it is the former, ideally we just make the tests robust (wait longer, maybe?). For now, this change will make the longtest builders OK again. For #75729. Change-Id: If9b30107d04a8e5af5670850add3a53f9471eec6 Reviewed-on: https://go-review.googlesource.com/c/go/+/708715 Reviewed-by: Roland Shoemaker Reviewed-by: Michael Pratt Auto-Submit: Michael Knyszek LUCI-TryBot-Result: Go LUCI Reviewed-by: Carlos Amedee --- src/runtime/goroutineleakprofile_test.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/runtime/goroutineleakprofile_test.go b/src/runtime/goroutineleakprofile_test.go index 9857d725dee..6e26bcab132 100644 --- a/src/runtime/goroutineleakprofile_test.go +++ b/src/runtime/goroutineleakprofile_test.go @@ -6,12 +6,20 @@ package runtime_test import ( "fmt" + "internal/testenv" + "os" "regexp" "strings" "testing" ) func TestGoroutineLeakProfile(t *testing.T) { + if strings.Contains(os.Getenv("GOFLAGS"), "mayMoreStackPreempt") { + // Some tests have false negatives under mayMoreStackPreempt. This may be a test-only issue, + // but needs more investigation. + testenv.SkipFlaky(t, 75729) + } + // Goroutine leak test case. // // Test cases can be configured with test name, the name of the entry point function, @@ -356,7 +364,7 @@ func TestGoroutineLeakProfile(t *testing.T) { `\(\*Page_hugo5379\)\.initContent\.func1\.1\(.* \[sync\.Mutex\.Lock\]`, `pageRenderer_hugo5379\(.* \[sync\.Mutex\.Lock\]`, `Hugo5379\.func2\(.* \[sync\.WaitGroup\.Wait\]`, - ), + ), makeFlakyTest("Istio16224", `Istio16224\.func2\(.* \[sync\.Mutex\.Lock\]`, `\(\*controller_istio16224\)\.Run\(.* \[chan send\]`,