summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-02-23 19:26:28 +0200
committerPaul Buetow <paul@buetow.org>2024-02-23 19:26:28 +0200
commitf9b317da174798c3b19ac7ed1923fefa3c96443a (patch)
treeea0d54e0627f4afaec697656a1a35999cab3addd /internal
parent2427ed2b058d057882ca6280c5365a49234e322a (diff)
fix data types
Diffstat (limited to 'internal')
-rw-r--r--internal/c/tracepoints/close.c4
-rw-r--r--internal/c/tracepoints/open.c4
-rw-r--r--internal/c/tracepoints/write.c4
-rw-r--r--internal/c/types.h14
-rw-r--r--internal/eventloop.go6
-rw-r--r--internal/generated/types/types.go16
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{