From: Paul E. Murphy Date: Wed, 28 Apr 2021 21:47:41 +0000 (-0500) Subject: os/signal: increase test timeouts on ppc64*/linux X-Git-Tag: go1.17beta1~258 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=da7496d84128be85a4db5b6fdf9029c48c867211;p=gostls13.git os/signal: increase test timeouts on ppc64*/linux TestSignalTrace can take a bit longer to run on some ppc64{,le} machines. I was only able to reproduce the timeout reliably on a POWER8/ppc64le ubuntu 16.04 host. Bump the timeout to 5 seconds. This should be more than sufficient for a test which occasionally takes a bit longer to run on these builders. Fixes #45773 Change-Id: I4177bb986561f714aabfa5b0ca44b1c90b1cd94f Reviewed-on: https://go-review.googlesource.com/c/go/+/315049 Run-TryBot: Paul Murphy TryBot-Result: Go Bot Reviewed-by: Bryan C. Mills Trust: Lynn Boger --- diff --git a/src/os/signal/signal_test.go b/src/os/signal/signal_test.go index 4c19281e91..cea68742d2 100644 --- a/src/os/signal/signal_test.go +++ b/src/os/signal/signal_test.go @@ -18,6 +18,7 @@ import ( "runtime" "runtime/trace" "strconv" + "strings" "sync" "syscall" "testing" @@ -47,6 +48,13 @@ func init() { // // See https://golang.org/issue/33174. settleTime = 11 * time.Second + } else if runtime.GOOS == "linux" && strings.HasPrefix(runtime.GOARCH, "ppc64") { + // Older linux kernels seem to have some hiccups delivering the signal + // in a timely manner on ppc64 and ppc64le. When running on a + // ppc64le/ubuntu 16.04/linux 4.4 host the time can vary quite + // substantially even on a idle system. 5 seconds is twice any value + // observed when running 10000 tests on such a system. + settleTime = 5 * time.Second } else if s := os.Getenv("GO_TEST_TIMEOUT_SCALE"); s != "" { if scale, err := strconv.Atoi(s); err == nil { settleTime *= time.Duration(scale)