diff options
| author | Paul Buetow <paul@buetow.org> | 2024-04-01 11:08:03 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2024-04-01 11:08:03 +0300 |
| commit | 0ff9732ce264692f88318f098836ca5c2afa62aa (patch) | |
| tree | b2da103adeb50ef0a3f6dcbb6f52c07c6ea2746b /internal/event.go | |
| parent | 0ae1e14580786019703ab188ab76560fc3323fdd (diff) | |
use u64 for time, use time since boot
Diffstat (limited to 'internal/event.go')
| -rw-r--r-- | internal/event.go | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/internal/event.go b/internal/event.go index acc8324..213e5ce 100644 --- a/internal/event.go +++ b/internal/event.go @@ -17,7 +17,7 @@ type event interface { GetTraceId() TraceId GetPid() uint32 GetTid() uint32 - GetTime() uint32 + GetTime() uint64 Recycle() } @@ -26,11 +26,11 @@ type eventPair struct { enterEv, exitEv event file file comm string - duration uint32 + duration uint64 tracepointMismatch bool // To calculate the time difference from the previoud event. prevPair *eventPair - durationToPrev uint32 + durationToPrev uint64 } func newEventPair(enterEv event) *eventPair { @@ -57,7 +57,7 @@ func (e *eventPair) String() string { sb.WriteString("MISMATCH ") } - sb.WriteString(fmt.Sprintf("%08dµs %08dµs", e.durationToPrev, e.duration)) + sb.WriteString(fmt.Sprintf("%08dns %08dns", e.durationToPrev, e.duration)) sb.WriteString(" ") sb.WriteString(e.comm) @@ -80,6 +80,16 @@ func (e *eventPair) String() string { return sb.String() } +func (e *eventPair) TimeDebugString() string { + if e.prevPair == nil { + return "no prev event yet" + } + return fmt.Sprintf("prev %v %v\ncurr %v %v\ndiff %v", + e.prevPair.enterEv.GetTime(), e.prevPair.exitEv.GetTime(), + e.enterEv.GetTime(), e.exitEv.GetTime(), + e.enterEv.GetTime()-e.prevPair.exitEv.GetTime()) +} + func (e *eventPair) dump() string { return fmt.Sprintf("%v with enterEv(%v) and exitEv(%v)", e, e.enterEv, e.exitEv) } |
