From: Michael Pratt Date: Fri, 9 Feb 2024 19:06:39 +0000 (-0500) Subject: internal/trace: run children in race mode during race testing X-Git-Tag: go1.23rc1~1256 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=644bc4a3e7095789843438648badb82a9a78abef;p=gostls13.git internal/trace: run children in race mode during race testing This would have caught #65607. On my machine: internal/trace/v2: ~13s internal/trace/v2: -short: ~4s internal/trace/v2: -race -short: ~20s internal/trace/v2: -race: ~46s For #65607. Change-Id: I03a555ebaf8c761c98a82b6d35fa16d7a99aa9e3 Reviewed-on: https://go-review.googlesource.com/c/go/+/562998 Auto-Submit: Michael Pratt LUCI-TryBot-Result: Go LUCI Reviewed-by: Michael Knyszek --- diff --git a/src/internal/trace/v2/trace_test.go b/src/internal/trace/v2/trace_test.go index 7cc7508fe9..aff57d809f 100644 --- a/src/internal/trace/v2/trace_test.go +++ b/src/internal/trace/v2/trace_test.go @@ -8,6 +8,7 @@ import ( "bufio" "bytes" "fmt" + "internal/race" "internal/testenv" "internal/trace/v2" "internal/trace/v2/testtrace" @@ -541,7 +542,11 @@ func testTraceProg(t *testing.T, progName string, extra func(t *testing.T, trace testName := progName runTest := func(t *testing.T, stress bool) { // Run the program and capture the trace, which is always written to stdout. - cmd := testenv.Command(t, testenv.GoToolPath(t), "run", testPath) + cmd := testenv.Command(t, testenv.GoToolPath(t), "run") + if race.Enabled { + cmd.Args = append(cmd.Args, "-race") + } + cmd.Args = append(cmd.Args, testPath) cmd.Env = append(os.Environ(), "GOEXPERIMENT=exectracer2") if stress { // Advance a generation constantly.