mirror of https://github.com/golang/go.git
runtime: move goroutine stack exists events after span events
Preserving an ordering wherein spans are always named before their constituents makes parsing much more straightforward. Change-Id: Ida8764801a6c516d672ba343e4ce01b66ce9b427 Reviewed-on: https://go-review.googlesource.com/c/go/+/586999 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Michael Knyszek <mknyszek@google.com> Reviewed-by: Michael Pratt <mpratt@google.com>
This commit is contained in:
parent
1110c4095e
commit
b6fa505c4a
|
|
@ -49,11 +49,6 @@ func traceSnapshotMemory(gen uintptr) {
|
|||
throw("traceSnapshotMemory: tracing is not enabled")
|
||||
}
|
||||
|
||||
// Write out all the goroutine stacks.
|
||||
forEachGRace(func(gp *g) {
|
||||
trace.GoroutineStackExists(gp.stack.lo, gp.stack.hi-gp.stack.lo)
|
||||
})
|
||||
|
||||
// Write out all the heap spans and heap objects.
|
||||
for _, s := range mheap_.allspans {
|
||||
if s.state.get() == mSpanDead {
|
||||
|
|
@ -77,6 +72,11 @@ func traceSnapshotMemory(gen uintptr) {
|
|||
abits.advance()
|
||||
}
|
||||
}
|
||||
|
||||
// Write out all the goroutine stacks.
|
||||
forEachGRace(func(gp *g) {
|
||||
trace.GoroutineStackExists(gp.stack.lo, gp.stack.hi-gp.stack.lo)
|
||||
})
|
||||
traceRelease(trace)
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue