summaryrefslogtreecommitdiff
path: root/libgo/go/internal/trace/goroutines.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/internal/trace/goroutines.go')
-rw-r--r--libgo/go/internal/trace/goroutines.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/libgo/go/internal/trace/goroutines.go b/libgo/go/internal/trace/goroutines.go
index f8673e20bc..923a157416 100644
--- a/libgo/go/internal/trace/goroutines.go
+++ b/libgo/go/internal/trace/goroutines.go
@@ -48,7 +48,7 @@ func GoroutineStats(events []*Event) map[uint64]*GDesc {
g := &GDesc{ID: ev.Args[0], CreationTime: ev.Ts, gdesc: new(gdesc)}
g.blockSchedTime = ev.Ts
gs[g.ID] = g
- case EvGoStart:
+ case EvGoStart, EvGoStartLabel:
g := gs[ev.G]
if g.PC == 0 {
g.PC = ev.Stk[0].PC
@@ -83,6 +83,10 @@ func GoroutineStats(events []*Event) map[uint64]*GDesc {
g := gs[ev.G]
g.ExecTime += ev.Ts - g.lastStartTime
g.blockNetTime = ev.Ts
+ case EvGoBlockGC:
+ g := gs[ev.G]
+ g.ExecTime += ev.Ts - g.lastStartTime
+ g.blockGCTime = ev.Ts
case EvGoUnblock:
g := gs[ev.Args[0]]
if g.blockNetTime != 0 {