diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-02-07 15:31:18 +0300 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-02-11 10:39:48 +0000 |
| commit | 59495e8dfda0cfc1fa527337b2fed8a8099137dc (patch) | |
| tree | d102f214df99efde953da072c29cc9bf86a98026 /src/runtime/runtime2.go | |
| parent | 84e256753744e765e4a31b48e2a641eecd4d01f1 (diff) | |
| download | go-59495e8dfda0cfc1fa527337b2fed8a8099137dc.tar.xz | |
runtime: never show system goroutines in traceback
Fixes #9791
g.issystem flag setup races with other code wherever we set it.
Even if we set both in parent goroutine and in the system goroutine,
it is still possible that some other goroutine crashes
before the flag is set. We could pass issystem flag to newproc1,
but we start all goroutines with go nowadays.
Instead look at g.startpc to distinguish system goroutines (similar to topofstack).
Change-Id: Ia3467968dee27fa07d9fecedd4c2b00928f26645
Reviewed-on: https://go-review.googlesource.com/4113
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/runtime/runtime2.go')
| -rw-r--r-- | src/runtime/runtime2.go | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/runtime/runtime2.go b/src/runtime/runtime2.go index e38d11a59d..fab2ccbebf 100644 --- a/src/runtime/runtime2.go +++ b/src/runtime/runtime2.go @@ -199,7 +199,6 @@ type g struct { waitsince int64 // approx time when the g become blocked waitreason string // if status==gwaiting schedlink *g - issystem bool // do not output in stack dump, ignore in deadlock detector preempt bool // preemption signal, duplicates stackguard0 = stackpreempt paniconfault bool // panic (instead of crash) on unexpected fault address preemptscan bool // preempted g does scan for gc |
