runtime: check tgkill error in Debug tests
Updates #25519
Change-Id: Ibcdf948fd38d8d02d467b62213566ec0d7ce0d6a
Reviewed-on: https://go-review.googlesource.com/123180
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Austin Clements <austin@google.com>
diff --git a/src/runtime/debug_test.go b/src/runtime/debug_test.go
index 4181d59..a34f4c7 100644
--- a/src/runtime/debug_test.go
+++ b/src/runtime/debug_test.go
@@ -69,8 +69,8 @@
*x = 1
}
-func debugCallTKill(tid int) {
- syscall.Tgkill(syscall.Getpid(), tid, syscall.SIGTRAP)
+func debugCallTKill(tid int) error {
+ return syscall.Tgkill(syscall.Getpid(), tid, syscall.SIGTRAP)
}
func TestDebugCall(t *testing.T) {
diff --git a/src/runtime/export_debug_test.go b/src/runtime/export_debug_test.go
index 78436f3..d34c1fd 100644
--- a/src/runtime/export_debug_test.go
+++ b/src/runtime/export_debug_test.go
@@ -20,7 +20,7 @@
//
// On success, InjectDebugCall returns the panic value of fn or nil.
// If fn did not panic, its results will be available in args.
-func InjectDebugCall(gp *g, fn, args interface{}, tkill func(tid int)) (interface{}, error) {
+func InjectDebugCall(gp *g, fn, args interface{}, tkill func(tid int) error) (interface{}, error) {
if gp.lockedm == 0 {
return nil, plainError("goroutine not locked to thread")
}
@@ -54,7 +54,9 @@
defer func() { testSigtrap = nil }()
testSigtrap = h.inject
- tkill(tid)
+ if err := tkill(tid); err != nil {
+ return nil, err
+ }
// Wait for completion.
notetsleepg(&h.done, -1)
if len(h.err) != 0 {