aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiwei Bie <tiwei.btw@antgroup.com>2020-10-15 01:43:51 +0000
committerKeith Randall <khr@golang.org>2020-10-24 03:15:23 +0000
commitbc0b198bd75a8eef45d0965531ba6fa127d0e8ec (patch)
tree49736329131f8522e71389d0bff978fbc4fa124e
parent94eda9ae37d9f8a34c44c1ad1a030b4475f79faf (diff)
downloadgo-bc0b198bd75a8eef45d0965531ba6fa127d0e8ec.tar.gz
go-bc0b198bd75a8eef45d0965531ba6fa127d0e8ec.zip
runtime: dump the status of lockedg on error
The dumpgstatus() will dump current g's status anyway. When lockedg's status is bad, it's more helpful to dump lockedg's status as well than dumping current g's status twice. Change-Id: If5248cb94b9cdcbf4ceea07562237e1d6ee28489 GitHub-Last-Rev: da814c51ff42f56fb28582f088f4d72b500061fe GitHub-Pull-Request: golang/go#40248 Reviewed-on: https://go-review.googlesource.com/c/go/+/243097 Reviewed-by: Keith Randall <khr@golang.org> Trust: Emmanuel Odeke <emm.odeke@gmail.com> Run-TryBot: Emmanuel Odeke <emm.odeke@gmail.com> TryBot-Result: Go Bot <gobot@golang.org>
-rw-r--r--src/runtime/proc.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/runtime/proc.go b/src/runtime/proc.go
index aeacb23391..83d2a524e0 100644
--- a/src/runtime/proc.go
+++ b/src/runtime/proc.go
@@ -2302,8 +2302,8 @@ func stoplockedm() {
mPark()
status := readgstatus(_g_.m.lockedg.ptr())
if status&^_Gscan != _Grunnable {
- print("runtime:stoplockedm: g is not Grunnable or Gscanrunnable\n")
- dumpgstatus(_g_)
+ print("runtime:stoplockedm: lockedg (atomicstatus=", status, ") is not Grunnable or Gscanrunnable\n")
+ dumpgstatus(_g_.m.lockedg.ptr())
throw("stoplockedm: not runnable")
}
acquirep(_g_.m.nextp.ptr())