These fake P IDs really only belong to the traceviewer.
Change-Id: I7976beb5750f1efca85e28975074a8c570a9c959
Reviewed-on: https://go-review.googlesource.com/c/go/+/644876
Reviewed-by: Michael Pratt <mpratt@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
Name: r.Name,
Ts: ctx.elapsed(ar.time),
Dur: ev.Time().Sub(ar.time),
- Resource: trace.GCP,
+ Resource: traceviewer.GCP,
Stack: ctx.Stack(viewerFrames(ar.stack)),
EndStack: ctx.Stack(viewerFrames(ev.Stack())),
})
Name: name,
Ts: ctx.elapsed(ar.time),
Dur: ctx.endTime.Sub(ar.time),
- Resource: trace.GCP,
+ Resource: traceviewer.GCP,
Stack: ctx.Stack(viewerFrames(ar.stack)),
})
}
// to emit a flow event from, indicating explicitly that this goroutine was unblocked by the system.
func (gs *gState[R]) blockedSyscallEnd(ts trace.Time, stack trace.Stack, ctx *traceContext) {
name := "exit blocked syscall"
- gs.setStartCause(ts, name, trace.SyscallP, stack)
+ gs.setStartCause(ts, name, traceviewer.SyscallP, stack)
// Emit an syscall exit instant event for the "Syscall" lane.
ctx.Instant(traceviewer.InstantEvent{
Name: name,
Ts: ctx.elapsed(ts),
- Resource: trace.SyscallP,
+ Resource: traceviewer.SyscallP,
Stack: ctx.Stack(viewerFrames(stack)),
})
}
// TODO(mknyszek): Handle this invalidness in a more general way.
if _, ok := any(resource).(trace.ThreadID); !ok {
// Emit an unblock instant event for the "Network" lane.
- viewerResource = trace.NetpollP
+ viewerResource = traceviewer.NetpollP
}
ctx.Instant(traceviewer.InstantEvent{
Name: name,
import (
"bytes"
"encoding/json"
- "internal/trace"
"io"
"net/http/httptest"
"os"
"time"
"internal/trace/raw"
+ "internal/trace/traceviewer"
"internal/trace/traceviewer/format"
)
count := 0
var netBlockEv *format.Event
for _, e := range data.Events {
- if e.TID == trace.NetpollP && e.Name == "unblock (network)" && e.Phase == "I" && e.Scope == "t" {
+ if e.TID == traceviewer.NetpollP && e.Name == "unblock (network)" && e.Phase == "I" && e.Scope == "t" {
count++
netBlockEv = e
}
e.processMeta(format.ProcsSection, e.resourceType, 2)
- e.threadMeta(format.ProcsSection, trace.GCP, "GC", -6)
- e.threadMeta(format.ProcsSection, trace.NetpollP, "Network", -5)
- e.threadMeta(format.ProcsSection, trace.TimerP, "Timers", -4)
- e.threadMeta(format.ProcsSection, trace.SyscallP, "Syscalls", -3)
+ e.threadMeta(format.ProcsSection, GCP, "GC", -6)
+ e.threadMeta(format.ProcsSection, NetpollP, "Network", -5)
+ e.threadMeta(format.ProcsSection, TimerP, "Timers", -4)
+ e.threadMeta(format.ProcsSection, SyscallP, "Syscalls", -3)
for id, name := range e.resources {
priority := int(id)
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-package trace
+package traceviewer
const (
// Special P identifiers: