summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-02-27 19:39:23 +0200
committerPaul Buetow <paul@buetow.org>2024-02-27 19:39:23 +0200
commit5d2c6a86494b461b4dde5579abadec6f558c4845 (patch)
tree76756adc2f2576fb31e3a2afc5e79a206b9e2d61
parent2745f74f3db314a94ae181fb53963bf853db3833 (diff)
can load all generated probes
-rw-r--r--internal/c/generated/tracepoints.raku2
-rw-r--r--internal/c/tracepoints/open.c20
-rw-r--r--internal/c/tracepoints/write.c12
-rw-r--r--internal/generated/Makefile4
-rw-r--r--internal/generated/tracepoints.raku4
-rw-r--r--internal/generated/tracepoints/tracepoints.go114
-rw-r--r--internal/ioriotng.go6
7 files changed, 81 insertions, 81 deletions
diff --git a/internal/c/generated/tracepoints.raku b/internal/c/generated/tracepoints.raku
index 1164acf..563a028 100644
--- a/internal/c/generated/tracepoints.raku
+++ b/internal/c/generated/tracepoints.raku
@@ -3,8 +3,6 @@
use v6.d;
#use Grammar::Debugger;
-my Str @excluded = <SYS_ENTER_WRITE SYS_EXIT_WRITE>;
-
grammar SysTraceFormat {
rule TOP { <wholeformatsection>* }
rule wholeformatsection { <name> <id> <format> <print-fmt> }
diff --git a/internal/c/tracepoints/open.c b/internal/c/tracepoints/open.c
index 0b5d825..7582299 100644
--- a/internal/c/tracepoints/open.c
+++ b/internal/c/tracepoints/open.c
@@ -5,7 +5,7 @@
#define SYS_ENTER_OPENAT 3
#define SYS_EXIT_OPENAT 4
-static __always_inline int _handle_enter_open(struct trace_event_raw_sys_enter *ctx, __u32 syscall_id) {
+static __always_inline int _handle_sys_enter_open(struct trace_event_raw_sys_enter *ctx, __u32 syscall_id) {
__u32 pid, tid;
if (filter(&pid, &tid))
return 0;
@@ -28,7 +28,7 @@ static __always_inline int _handle_enter_open(struct trace_event_raw_sys_enter *
return 0;
}
-static __always_inline int _handle_exit_open(struct trace_event_raw_sys_exit *ctx, __u32 syscall_id) {
+static __always_inline int _handle_sys_exit_open(struct trace_event_raw_sys_exit *ctx, __u32 syscall_id) {
__u32 pid, tid;
if (filter(&pid, &tid))
return 0;
@@ -49,21 +49,21 @@ static __always_inline int _handle_exit_open(struct trace_event_raw_sys_exit *ct
}
SEC("tracepoint/syscalls/sys_enter_openat")
-int handle_enter_openat(struct trace_event_raw_sys_enter *ctx) {
- return _handle_enter_open(ctx, SYS_ENTER_OPENAT);
+int handle_sys_enter_openat(struct trace_event_raw_sys_enter *ctx) {
+ return _handle_sys_enter_open(ctx, SYS_ENTER_OPENAT);
}
SEC("tracepoint/syscalls/sys_exit_openat")
-int handle_exit_openat(struct trace_event_raw_sys_exit *ctx) {
- return _handle_exit_open(ctx, SYS_EXIT_OPENAT);
+int handle_sys_exit_openat(struct trace_event_raw_sys_exit *ctx) {
+ return _handle_sys_exit_open(ctx, SYS_EXIT_OPENAT);
}
SEC("tracepoint/syscalls/sys_enter_open")
-int handle_enter_open(struct trace_event_raw_sys_enter *ctx) {
- return _handle_enter_open(ctx, SYS_ENTER_OPEN);
+int handle_sys_enter_open(struct trace_event_raw_sys_enter *ctx) {
+ return _handle_sys_enter_open(ctx, SYS_ENTER_OPEN);
}
SEC("tracepoint/syscalls/sys_exit_open")
-int handle_exit_open(struct trace_event_raw_sys_exit *ctx) {
- return _handle_exit_open(ctx, SYS_EXIT_OPEN);
+int handle_sys_exit_open(struct trace_event_raw_sys_exit *ctx) {
+ return _handle_sys_exit_open(ctx, SYS_EXIT_OPEN);
}
diff --git a/internal/c/tracepoints/write.c b/internal/c/tracepoints/write.c
index 9d737f7..80244e5 100644
--- a/internal/c/tracepoints/write.c
+++ b/internal/c/tracepoints/write.c
@@ -1,7 +1,8 @@
//+build ignore
-SEC("tracepoint/syscalls/sys_enter_write")
-int handle_enter_write(struct trace_event_raw_sys_enter *ctx) {
+// SEC("tracepoint/syscalls/sys_enter_write")
+/*
+int handle_sys_enter_write(struct trace_event_raw_sys_enter *ctx) {
__u32 pid, tid;
if (filter(&pid, &tid))
return 0;
@@ -19,9 +20,11 @@ int handle_enter_write(struct trace_event_raw_sys_enter *ctx) {
bpf_ringbuf_submit(ev, 0);
return 0;
}
+*/
-SEC("tracepoint/syscalls/sys_exit_write")
-int handle_exit_write(struct trace_event_raw_sys_exit *ctx) {
+// SEC("tracepoint/syscalls/sys_exit_write")
+/*
+int handle_sys_exit_write(struct trace_event_raw_sys_exit *ctx) {
__u32 pid, tid;
if (filter(&pid, &tid))
return 0;
@@ -40,3 +43,4 @@ int handle_exit_write(struct trace_event_raw_sys_exit *ctx) {
return 0;
}
+*/
diff --git a/internal/generated/Makefile b/internal/generated/Makefile
index b132bb3..3d6bfd3 100644
--- a/internal/generated/Makefile
+++ b/internal/generated/Makefile
@@ -7,11 +7,11 @@ tracepoints:
cat ../c/*/*.c \
| raku tracepoints.raku \
| goimports | gofmt \
- | tee tracepoints/tracepoints.go
+ > tracepoints/tracepoints.go
.PHONY: types
types:
( cat ../c/types.h; grep -h '^#define' ../c/*/*.c ) \
| raku nqc.raku \
| goimports | gofmt \
- | tee types/types.go
+ > types/types.go
diff --git a/internal/generated/tracepoints.raku b/internal/generated/tracepoints.raku
index 0afdd7f..6cdc0d0 100644
--- a/internal/generated/tracepoints.raku
+++ b/internal/generated/tracepoints.raku
@@ -3,7 +3,7 @@
use v6.d;
my @tracepoints = gather for $*IN.slurp.split("\n") {
- take $/<tracepoint>.Str if /^SEC.*sys_$<tracepoint>=(<[a..z _]>+)/;
+ take $/<tracepoint>.Str if /^SEC.*sys_$<tracepoint>=(<[a..z_0..9]>+)/;
}
say qq:to/END/;
@@ -11,6 +11,6 @@ say qq:to/END/;
package tracepoints
var List = []string\{
- {@tracepoints.map({ "\"$_\"," }).join("\n\t") }
+ {@tracepoints.map({ "\"sys_$_\"," }).join("\n\t") }
\}
END
diff --git a/internal/generated/tracepoints/tracepoints.go b/internal/generated/tracepoints/tracepoints.go
index b0ce16d..8b9a1a6 100644
--- a/internal/generated/tracepoints/tracepoints.go
+++ b/internal/generated/tracepoints/tracepoints.go
@@ -2,62 +2,60 @@
package tracepoints
var List = []string{
- "exit_cachestat",
- "enter_cachestat",
- "exit_close_range",
- "enter_close_range",
- "exit_close",
- "enter_close",
- "exit_fchown",
- "enter_fchown",
- "exit_fchmod",
- "enter_fchmod",
- "exit_fchdir",
- "enter_fchdir",
- "exit_ftruncate",
- "enter_ftruncate",
- "exit_copy_file_range",
- "enter_copy_file_range",
- "exit_pwrite",
- "enter_pwrite",
- "exit_pread",
- "enter_pread",
- "exit_write",
- "enter_write",
- "exit_read",
- "enter_read",
- "exit_lseek",
- "enter_lseek",
- "exit_newfstat",
- "enter_newfstat",
- "exit_fcntl",
- "enter_fcntl",
- "exit_ioctl",
- "enter_ioctl",
- "exit_getdents",
- "enter_getdents",
- "exit_getdents",
- "enter_getdents",
- "exit_sync_file_range",
- "enter_sync_file_range",
- "exit_fdatasync",
- "enter_fdatasync",
- "exit_fsync",
- "enter_fsync",
- "exit_fstatfs",
- "enter_fstatfs",
- "exit_flock",
- "enter_flock",
- "exit_quotactl_fd",
- "enter_quotactl_fd",
- "exit_io_uring_register",
- "enter_io_uring_register",
- "exit_io_uring_enter",
- "enter_io_uring_enter",
- "enter_openat",
- "exit_openat",
- "enter_open",
- "exit_open",
- "enter_write",
- "exit_write",
+ "sys_exit_cachestat",
+ "sys_enter_cachestat",
+ "sys_exit_close_range",
+ "sys_enter_close_range",
+ "sys_exit_close",
+ "sys_enter_close",
+ "sys_exit_fchown",
+ "sys_enter_fchown",
+ "sys_exit_fchmod",
+ "sys_enter_fchmod",
+ "sys_exit_fchdir",
+ "sys_enter_fchdir",
+ "sys_exit_ftruncate",
+ "sys_enter_ftruncate",
+ "sys_exit_copy_file_range",
+ "sys_enter_copy_file_range",
+ "sys_exit_pwrite64",
+ "sys_enter_pwrite64",
+ "sys_exit_pread64",
+ "sys_enter_pread64",
+ "sys_exit_write",
+ "sys_enter_write",
+ "sys_exit_read",
+ "sys_enter_read",
+ "sys_exit_lseek",
+ "sys_enter_lseek",
+ "sys_exit_newfstat",
+ "sys_enter_newfstat",
+ "sys_exit_fcntl",
+ "sys_enter_fcntl",
+ "sys_exit_ioctl",
+ "sys_enter_ioctl",
+ "sys_exit_getdents64",
+ "sys_enter_getdents64",
+ "sys_exit_getdents",
+ "sys_enter_getdents",
+ "sys_exit_sync_file_range",
+ "sys_enter_sync_file_range",
+ "sys_exit_fdatasync",
+ "sys_enter_fdatasync",
+ "sys_exit_fsync",
+ "sys_enter_fsync",
+ "sys_exit_fstatfs",
+ "sys_enter_fstatfs",
+ "sys_exit_flock",
+ "sys_enter_flock",
+ "sys_exit_quotactl_fd",
+ "sys_enter_quotactl_fd",
+ "sys_exit_io_uring_register",
+ "sys_enter_io_uring_register",
+ "sys_exit_io_uring_enter",
+ "sys_enter_io_uring_enter",
+ "sys_enter_openat",
+ "sys_exit_openat",
+ "sys_enter_open",
+ "sys_exit_open",
}
diff --git a/internal/ioriotng.go b/internal/ioriotng.go
index 564ddc1..d252030 100644
--- a/internal/ioriotng.go
+++ b/internal/ioriotng.go
@@ -20,10 +20,10 @@ func attachTracepoints(bpfModule *bpf.Module) error {
}
fmt.Println("Attached prog handle_" + name)
- if _, err = prog.AttachTracepoint("syscalls", fmt.Sprintf("sys_%s", name)); err != nil {
- return fmt.Errorf("Failed to attach to sys_%s tracepoint: %v", name, err)
+ if _, err = prog.AttachTracepoint("syscalls", name); err != nil {
+ return fmt.Errorf("Failed to attach to %s tracepoint: %v", name, err)
}
- fmt.Println("Attached tracepoint sys_" + name)
+ fmt.Println("Attached tracepoint " + name)
}
return nil