From: Russ Cox Date: Fri, 20 Nov 2015 19:02:33 +0000 (-0500) Subject: [release-branch.go1.5] runtime: fix new stack barrier check X-Git-Tag: go1.5.2~19 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=7ab4cba9ad76f8853f11de1a72ff1db790c5ea61;p=gostls13.git [release-branch.go1.5] runtime: fix new stack barrier check During a crash showing goroutine stacks of all threads (with GOTRACEBACK=crash), it can be that f == nil. Only happens on Solaris; not sure why. Change-Id: Iee2c394a0cf19fa0a24f6befbc70776b9e42d25a Reviewed-on: https://go-review.googlesource.com/17110 Reviewed-by: Austin Clements Reviewed-on: https://go-review.googlesource.com/17122 Reviewed-by: Russ Cox --- diff --git a/src/runtime/traceback.go b/src/runtime/traceback.go index aed6cbd694..8f27ba4d66 100644 --- a/src/runtime/traceback.go +++ b/src/runtime/traceback.go @@ -188,7 +188,7 @@ func gentraceback(pc0, sp0, lr0 uintptr, gp *g, skip int, pcbuf *uintptr, max in } f := findfunc(frame.pc) - if f.entry == stackBarrierPC { + if f != nil && f.entry == stackBarrierPC { // We got caught in the middle of a stack barrier // (presumably by a signal), so stkbar may be // inconsistent with the barriers on the stack.