From 93870aeee980aadf6f67b778734f25419de55a7d Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 26 Jun 2017 16:11:33 -0700 Subject: [PATCH] runtime: get more info for TestCgoSignalDeadlock failures Updates #18598 Change-Id: I13c60124714cf9d1537efa0a7dd1e6a0fed9ae5b Reviewed-on: https://go-review.googlesource.com/46723 Run-TryBot: Ian Lance Taylor Reviewed-by: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- src/runtime/testdata/testprogcgo/cgo.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/runtime/testdata/testprogcgo/cgo.go b/src/runtime/testdata/testprogcgo/cgo.go index 870d4efdeada3..209524a24dbb9 100644 --- a/src/runtime/testdata/testprogcgo/cgo.go +++ b/src/runtime/testdata/testprogcgo/cgo.go @@ -45,10 +45,13 @@ func CgoSignalDeadlock() { }() var s *string *s = "" + fmt.Printf("continued after expected panic\n") }() } }() time.Sleep(time.Millisecond) + start := time.Now() + var times []time.Duration for i := 0; i < 64; i++ { go func() { runtime.LockOSThread() @@ -62,8 +65,9 @@ func CgoSignalDeadlock() { ping <- false select { case <-ping: + times = append(times, time.Since(start)) case <-time.After(time.Second): - fmt.Printf("HANG\n") + fmt.Printf("HANG 1 %v\n", times) return } } @@ -71,7 +75,7 @@ func CgoSignalDeadlock() { select { case <-ping: case <-time.After(time.Second): - fmt.Printf("HANG\n") + fmt.Printf("HANG 2 %v\n", times) return } fmt.Printf("OK\n")