runtime: remove crash_cgo_test CgoRaceSignal timeout

The test had a 5 second timeout. Running the test on a Darwin system
sometimes took less than 5 seconds but often took up to 8 seconds.
We don't need a timeout anyhow. Instead, use testenv.Command to
run the program, which uses the test timeout.

Fixes #59807

Change-Id: Ibf3eda9702731bf98601782f4abd11c3caa0bf40
Reviewed-on: https://go-review.googlesource.com/c/go/+/494456
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
This commit is contained in:
Ian Lance Taylor 2023-05-11 14:01:02 -07:00 committed by Gopher Robot
parent e2500be549
commit a25688d406
2 changed files with 1 additions and 14 deletions

View file

@ -410,9 +410,6 @@ func TestRaceSignal(t *testing.T) {
t.Skipf("skipping: test requires pthread support")
// TODO: Can this test be rewritten to use the C11 thread API instead?
}
if runtime.GOOS == "darwin" || runtime.GOOS == "ios" {
testenv.SkipFlaky(t, 59807)
}
t.Parallel()
@ -429,7 +426,7 @@ func TestRaceSignal(t *testing.T) {
t.Fatal(err)
}
got, err := testenv.CleanCmdEnv(exec.Command(exe, "CgoRaceSignal")).CombinedOutput()
got, err := testenv.CleanCmdEnv(testenv.Command(t, exe, "CgoRaceSignal")).CombinedOutput()
if err != nil {
t.Logf("%s\n", got)
t.Fatal(err)

View file

@ -81,8 +81,6 @@ import "C"
import (
"fmt"
"os"
"time"
)
func init() {
@ -90,14 +88,6 @@ func init() {
}
func CgoRaceSignal() {
// The failure symptom is that the program hangs because of a
// deadlock in malloc, so set an alarm.
go func() {
time.Sleep(5 * time.Second)
fmt.Println("Hung for 5 seconds")
os.Exit(1)
}()
C.runRaceSignalThread()
fmt.Println("OK")
}