From 644bc4a3e7095789843438648badb82a9a78abef Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Fri, 9 Feb 2024 14:06:39 -0500 Subject: [PATCH] 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 --- src/internal/trace/v2/trace_test.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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. -- 2.48.1