diff options
| -rw-r--r-- | internal/ioriotng.bpf.c | 8 | ||||
| -rw-r--r-- | internal/ioriotng.go | 12 | ||||
| -rw-r--r-- | internal/types/types.bpf.h | 6 | ||||
| -rw-r--r-- | internal/types/types.go | 8 |
4 files changed, 17 insertions, 17 deletions
diff --git a/internal/ioriotng.bpf.c b/internal/ioriotng.bpf.c index 13a112d..b89cfbc 100644 --- a/internal/ioriotng.bpf.c +++ b/internal/ioriotng.bpf.c @@ -21,7 +21,7 @@ int handle_enter_openat(struct trace_event_raw_sys_enter *ctx) { return 0; ev->op_id = OPENAT_ENTER_OP_ID; - ev->tid = bpf_get_current_pid_tgid(); + ev->tid_tgid = bpf_get_current_pid_tgid(); ev->time = bpf_ktime_get_ns(); __builtin_memset(&(ev->filename), 0, sizeof(ev->filename) + sizeof(ev->comm)); @@ -42,7 +42,7 @@ int handle_exit_openat(struct trace_event_raw_sys_exit *ctx) { return 0; ev->op_id = OPENAT_EXIT_OP_ID; - ev->tid = bpf_get_current_pid_tgid(); + ev->tid_tgid = bpf_get_current_pid_tgid(); ev->time = bpf_ktime_get_ns(); ev->fd = ctx->ret; @@ -71,7 +71,7 @@ int handle_enter_close(struct trace_event_raw_sys_enter *ctx) { return 0; ev->op_id = CLOSE_ENTER_OP_ID; - ev->tid = bpf_get_current_pid_tgid(); + ev->tid_tgid = bpf_get_current_pid_tgid(); ev->time = bpf_ktime_get_ns(); ev->fd = (int)ctx->args[0]; @@ -89,7 +89,7 @@ int handle_exit_close(struct trace_event_raw_sys_enter *ctx) { return 0; ev->op_id = CLOSE_EXIT_OP_ID; - ev->tid = bpf_get_current_pid_tgid(); + ev->tid_tgid = bpf_get_current_pid_tgid(); ev->time = bpf_ktime_get_ns(); bpf_ringbuf_submit(ev, 0); diff --git a/internal/ioriotng.go b/internal/ioriotng.go index 8ab9371..2ab2b33 100644 --- a/internal/ioriotng.go +++ b/internal/ioriotng.go @@ -64,11 +64,11 @@ func Run(flags flags.Flags) { switch types.OpId(raw[0]) { case types.OPENAT_ENTER_OP_ID: ev := readRaw(raw, syncpool.OpenEnterEvent.Get().(*types.OpenatEnterEvent)) - enterOpen[ev.Tid] = ev + enterOpen[ev.PidTGid] = ev case types.OPENAT_EXIT_OP_ID: ev := readRaw(raw, syncpool.FdEvent.Get().(*types.FdEvent)) - enterEv, ok := enterOpen[ev.Tid] + enterEv, ok := enterOpen[ev.PidTGid] if !ok { fmt.Println("Dropping", ev) syncpool.FdEvent.Put(ev) @@ -77,17 +77,17 @@ func Run(flags flags.Flags) { duration := float64(ev.Time-enterEv.Time) / float64(1_000_000) fmt.Println(duration, "ms", enterEv, ev) - delete(enterOpen, ev.Tid) + delete(enterOpen, ev.PidTGid) syncpool.FdEvent.Put(ev) syncpool.OpenEnterEvent.Put(enterEv) case types.CLOSE_ENTER_OP_ID: ev := readRaw(raw, syncpool.FdEvent.Get().(*types.FdEvent)) - enterFd[ev.Tid] = ev + enterFd[ev.PidTGid] = ev case types.CLOSE_EXIT_OP_ID: ev := readRaw(raw, syncpool.NullEvent.Get().(*types.NullEvent)) - enterEv, ok := enterFd[ev.Tid] + enterEv, ok := enterFd[ev.PidTGid] if !ok { fmt.Println("Dropping", ev) syncpool.NullEvent.Put(ev) @@ -96,7 +96,7 @@ func Run(flags flags.Flags) { duration := float64(ev.Time-enterEv.Time) / float64(1_000_000) fmt.Println(duration, "ms", enterEv, ev) - delete(enterFd, ev.Tid) + delete(enterFd, ev.PidTGid) syncpool.NullEvent.Put(ev) syncpool.FdEvent.Put(enterEv) diff --git a/internal/types/types.bpf.h b/internal/types/types.bpf.h index 57feaaa..7601c17 100644 --- a/internal/types/types.bpf.h +++ b/internal/types/types.bpf.h @@ -12,20 +12,20 @@ struct null_event { __u32 op_id; - __u32 tid; + __u32 tid_tgid; __u64 time; }; struct fd_event { __u32 op_id; - __u32 tid; + __u32 tid_tgid; __u64 time; __s32 fd; }; struct openat_enter_event { __u32 op_id; - __u32 tid; + __u32 tid_tgid; __u64 time; char filename[MAX_FILENAME_LENGTH]; char comm[MAX_PROGNAME_LENGTH]; diff --git a/internal/types/types.go b/internal/types/types.go index 7c5c269..1d151dd 100644 --- a/internal/types/types.go +++ b/internal/types/types.go @@ -35,13 +35,13 @@ func (id OpId) String() string { } type NullEvent struct { - OpId OpId - Tid uint32 - Time uint64 + OpId OpId + PidTGid uint32 + Time uint64 } func (ev NullEvent) String() string { - return fmt.Sprintf("%s Tid:%v Time:%v", ev.OpId, ev.Tid, ev.Time) + return fmt.Sprintf("%s PidTGid:%v Time:%v", ev.OpId, ev.PidTGid, ev.Time) } type FdEvent struct { |
