mirror of
https://github.com/golang/go.git
synced 2025-10-19 19:13:18 +00:00
runtime: only read pp.m in schedtrace if needed
Change-Id: Iad3353431a2ef97c1e0c440bdd84b78cb5ea990e Reviewed-on: https://go-review.googlesource.com/c/go/+/635635 Reviewed-by: Michael Pratt <mpratt@google.com> Auto-Submit: Nicolas Hillegeer <aktau@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
parent
81c66e71d4
commit
ecda82012d
1 changed files with 1 additions and 1 deletions
|
@ -6391,11 +6391,11 @@ func schedtrace(detailed bool) {
|
|||
// Even if we hold schedlock, most data can be changed concurrently.
|
||||
// E.g. (p->m ? p->m->id : -1) can crash if p->m changes from non-nil to nil.
|
||||
for i, pp := range allp {
|
||||
mp := pp.m.ptr()
|
||||
h := atomic.Load(&pp.runqhead)
|
||||
t := atomic.Load(&pp.runqtail)
|
||||
if detailed {
|
||||
print(" P", i, ": status=", pp.status, " schedtick=", pp.schedtick, " syscalltick=", pp.syscalltick, " m=")
|
||||
mp := pp.m.ptr()
|
||||
if mp != nil {
|
||||
print(mp.id)
|
||||
} else {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue