From 8fca13953b551bb75af0a31d737a297de97676a7 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Wed, 20 Sep 2017 00:33:29 +0000 Subject: runtime: restore "goroutine in C code" message In the 1.9 upgrade I took out the word "goroutine" from a traceback showing a goroutine running in C code, to let TestCgoNumGoroutine pass. However, it turns out that some code is actually checking for that string; for example, https://github.com/grpc/grpc-go/blob/master/test/leakcheck/leakcheck.go#L44 So keep the message the same, and change the test. Reviewed-on: https://go-review.googlesource.com/64850 From-SVN: r252991 --- libgo/go/runtime/testdata/testprogcgo/numgoroutine.go | 1 + libgo/go/runtime/traceback_gccgo.go | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'libgo') diff --git a/libgo/go/runtime/testdata/testprogcgo/numgoroutine.go b/libgo/go/runtime/testdata/testprogcgo/numgoroutine.go index 12fda49..68f1738 100644 --- a/libgo/go/runtime/testdata/testprogcgo/numgoroutine.go +++ b/libgo/go/runtime/testdata/testprogcgo/numgoroutine.go @@ -75,6 +75,7 @@ func checkNumGoroutine(label string, want int) (string, bool) { sbuf := make([]byte, 32<<10) sbuf = sbuf[:runtime.Stack(sbuf, true)] n = strings.Count(string(sbuf), "goroutine ") + n -= strings.Count(string(sbuf), "goroutine in C code") if n != want { fmt.Printf("%s Stack: want %d; got %d:\n%s\n", label, want, n, string(sbuf)) return "", false diff --git a/libgo/go/runtime/traceback_gccgo.go b/libgo/go/runtime/traceback_gccgo.go index f29ccd7..37c5698 100644 --- a/libgo/go/runtime/traceback_gccgo.go +++ b/libgo/go/runtime/traceback_gccgo.go @@ -216,7 +216,7 @@ func tracebackothers(me *g) { print("\tgoroutine running on other thread; stack unavailable\n") printcreatedby(gp) } else if readgstatus(gp)&^_Gscan == _Gsyscall { - print("\tin C code; stack unavailable\n") + print("\tgoroutine in C code; stack unavailable\n") printcreatedby(gp) } else { gp.traceback = &tb -- cgit v1.1