diff options
| author | Paul Buetow <paul@buetow.org> | 2024-02-23 19:26:28 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2024-02-23 19:26:28 +0200 |
| commit | f9b317da174798c3b19ac7ed1923fefa3c96443a (patch) | |
| tree | ea0d54e0627f4afaec697656a1a35999cab3addd /internal | |
| parent | 2427ed2b058d057882ca6280c5365a49234e322a (diff) | |
fix data types
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/c/tracepoints/close.c | 4 | ||||
| -rw-r--r-- | internal/c/tracepoints/open.c | 4 | ||||
| -rw-r--r-- | internal/c/tracepoints/write.c | 4 | ||||
| -rw-r--r-- | internal/c/types.h | 14 | ||||
| -rw-r--r-- | internal/eventloop.go | 6 | ||||
| -rw-r--r-- | internal/generated/types/types.go | 16 |
6 files changed, 24 insertions, 24 deletions
diff --git a/internal/c/tracepoints/close.c b/internal/c/tracepoints/close.c index f98b39c..9d0b866 100644 --- a/internal/c/tracepoints/close.c +++ b/internal/c/tracepoints/close.c @@ -13,7 +13,7 @@ int handle_enter_close(struct trace_event_raw_sys_enter *ctx) { ev->op_id = CLOSE_ENTER_OP_ID; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; ev->fd = (int)ctx->args[0]; bpf_ringbuf_submit(ev, 0); @@ -33,7 +33,7 @@ int handle_exit_close(struct trace_event_raw_sys_exit *ctx) { ev->op_id = CLOSE_EXIT_OP_ID; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; bpf_ringbuf_submit(ev, 0); diff --git a/internal/c/tracepoints/open.c b/internal/c/tracepoints/open.c index 24f94b8..fa0fbf3 100644 --- a/internal/c/tracepoints/open.c +++ b/internal/c/tracepoints/open.c @@ -12,7 +12,7 @@ static __always_inline int _handle_enter_open(struct trace_event_raw_sys_enter * ev->op_id = op_id; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; // Reset memory, as structure is re-used (ringbuffer) __builtin_memset(&(ev->filename), 0, sizeof(ev->filename) + sizeof(ev->comm)); @@ -35,7 +35,7 @@ static __always_inline int _handle_exit_open(struct trace_event_raw_sys_exit *ct ev->op_id = op_id; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; ev->fd = ctx->ret; bpf_ringbuf_submit(ev, 0); diff --git a/internal/c/tracepoints/write.c b/internal/c/tracepoints/write.c index b79ae92..9771193 100644 --- a/internal/c/tracepoints/write.c +++ b/internal/c/tracepoints/write.c @@ -13,7 +13,7 @@ int handle_enter_write(struct trace_event_raw_sys_enter *ctx) { ev->op_id = WRITE_ENTER_OP_ID; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; ev->fd = (int)ctx->args[0]; bpf_ringbuf_submit(ev, 0); @@ -33,7 +33,7 @@ int handle_exit_write(struct trace_event_raw_sys_exit *ctx) { ev->op_id = WRITE_EXIT_OP_ID; ev->pid = pid; ev->tid = tid; - ev->time = bpf_ktime_get_ns(); + ev->time = bpf_ktime_get_ns() / 1000; ev->size = ctx->ret; bpf_ringbuf_submit(ev, 0); diff --git a/internal/c/types.h b/internal/c/types.h index b62c19a..abec562 100644 --- a/internal/c/types.h +++ b/internal/c/types.h @@ -20,14 +20,14 @@ struct null_event { __u32 op_id; __u32 pid; __u32 tid; - __u64 time; + __u32 time; }; struct fd_event { __u32 op_id; __u32 pid; __u32 tid; - __u64 time; + __u32 time; __s32 fd; }; @@ -35,15 +35,15 @@ struct rw_event { __u32 op_id; __u32 pid; __u32 tid; - __u64 time; - __s64 size; + __u32 time; + __u64 size; }; struct open_enter_event { __u32 op_id; - char filename[MAX_FILENAME_LENGTH]; - char comm[MAX_PROGNAME_LENGTH]; __u32 pid; __u32 tid; - __u64 time; + __u32 time; + char filename[MAX_FILENAME_LENGTH]; + char comm[MAX_PROGNAME_LENGTH]; }; diff --git a/internal/eventloop.go b/internal/eventloop.go index 5f754a5..7d71b35 100644 --- a/internal/eventloop.go +++ b/internal/eventloop.go @@ -59,7 +59,7 @@ func eventLoop(bpfModule *bpf.Module, ch <-chan []byte) { path: string(enterEv.Filename[:]), } openFdMap[ev.Fd] = file - duration := float64(ev.Time-enterEv.Time) / float64(1_000_000) + duration := ev.Time - enterEv.Time fmt.Println(duration, "ms", "opened", file) delete(enterOpen, ev.Tid) @@ -86,7 +86,7 @@ func eventLoop(bpfModule *bpf.Module, ch <-chan []byte) { ev.Recycle() continue } - duration := float64(ev.Time-enterEv.Time) / float64(1_000_000) + duration := ev.Time - enterEv.Time file, _ := openFdMap[enterEv.Fd] fmt.Println(duration, "ms", "closed", file) @@ -104,7 +104,7 @@ func eventLoop(bpfModule *bpf.Module, ch <-chan []byte) { ev.Recycle() continue } - duration := float64(ev.Time-enterEv.Time) / float64(1_000_000) + duration := ev.Time - enterEv.Time if file, ok := openFdMap[enterEv.Fd]; ok { fmt.Println(duration, "ms", "wrote", ev.Size, "bytes", file) } diff --git a/internal/generated/types/types.go b/internal/generated/types/types.go index 3d5dc48..6fed235 100644 --- a/internal/generated/types/types.go +++ b/internal/generated/types/types.go @@ -54,7 +54,7 @@ type NullEvent struct { OpId OpId Pid uint32 Tid uint32 - Time uint64 + Time uint32 } func (n NullEvent) String() string { @@ -82,7 +82,7 @@ type FdEvent struct { OpId OpId Pid uint32 Tid uint32 - Time uint64 + Time uint32 Fd int32 } @@ -111,8 +111,8 @@ type RwEvent struct { OpId OpId Pid uint32 Tid uint32 - Time uint64 - Size int64 + Time uint32 + Size uint64 } func (r RwEvent) String() string { @@ -138,15 +138,15 @@ func (r *RwEvent) Recycle() { type OpenEnterEvent struct { OpId OpId - Filename [MAX_FILENAME_LENGTH]byte - Comm [MAX_PROGNAME_LENGTH]byte Pid uint32 Tid uint32 - Time uint64 + Time uint32 + Filename [MAX_FILENAME_LENGTH]byte + Comm [MAX_PROGNAME_LENGTH]byte } func (o OpenEnterEvent) String() string { - return fmt.Sprintf("OpId:%v Filename:%v Comm:%v Pid:%v Tid:%v Time:%v", o.OpId, string(o.Filename[:]), string(o.Comm[:]), o.Pid, o.Tid, o.Time) + return fmt.Sprintf("OpId:%v Pid:%v Tid:%v Time:%v Filename:%v Comm:%v", o.OpId, o.Pid, o.Tid, o.Time, string(o.Filename[:]), string(o.Comm[:])) } var poolOfOpenEnterEvents = sync.Pool{ |
