summaryrefslogtreecommitdiff
path: root/internal/generate/codegen_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-02-21 13:59:39 +0200
committerPaul Buetow <paul@buetow.org>2026-02-21 13:59:39 +0200
commitb5792f8e23d1599dcce49bc83e5d128abee484f3 (patch)
treeef07039e4e05b23a6b41adf6b663abd0109a436b /internal/generate/codegen_test.go
parent114f0cb9e6e5487fccaafb7d7065b611c8c14402 (diff)
Enable name_to_handle_at and io_uring fd attribution
Amp-Thread-ID: https://ampcode.com/threads/T-019c7fec-eec9-706a-8338-3ce674802680 Co-authored-by: Amp <amp@ampcode.com>
Diffstat (limited to 'internal/generate/codegen_test.go')
-rw-r--r--internal/generate/codegen_test.go30
1 files changed, 30 insertions, 0 deletions
diff --git a/internal/generate/codegen_test.go b/internal/generate/codegen_test.go
index b19a824..23ab7c1 100644
--- a/internal/generate/codegen_test.go
+++ b/internal/generate/codegen_test.go
@@ -129,6 +129,26 @@ func TestGenerateNullHandler(t *testing.T) {
}
}
+func TestGenerateIoUringEnterHandler(t *testing.T) {
+ output := generateFromPair(t, FormatIoUringEnter, FormatExitIoUringEnter)
+
+ requireContains(t, output, `SEC("tracepoint/syscalls/sys_enter_io_uring_enter")`)
+ requireContains(t, output, "struct fd_event *ev")
+ requireContains(t, output, "ev->event_type = ENTER_FD_EVENT;")
+ requireContains(t, output, "ev->trace_id = SYS_ENTER_IO_URING_ENTER;")
+ requireContains(t, output, "ev->fd = (__s32)ctx->args[0];")
+}
+
+func TestGenerateIoUringRegisterHandler(t *testing.T) {
+ output := generateFromPair(t, FormatIoUringRegister, FormatExitIoUringRegister)
+
+ requireContains(t, output, `SEC("tracepoint/syscalls/sys_enter_io_uring_register")`)
+ requireContains(t, output, "struct fd_event *ev")
+ requireContains(t, output, "ev->event_type = ENTER_FD_EVENT;")
+ requireContains(t, output, "ev->trace_id = SYS_ENTER_IO_URING_REGISTER;")
+ requireContains(t, output, "ev->fd = (__s32)ctx->args[0];")
+}
+
func TestGenerateDup3Handler(t *testing.T) {
output := generateFromPair(t, FormatDup3, FormatExitDup3)
@@ -146,6 +166,16 @@ func TestGenerateOpenByHandleAtHandler(t *testing.T) {
requireContains(t, output, "ev->flags = (__s32)ctx->args[2];")
}
+func TestGenerateNameToHandleAtHandler(t *testing.T) {
+ output := generateFromPair(t, FormatNameToHandleAt, FormatExitNameToHandleAt)
+
+ requireContains(t, output, `SEC("tracepoint/syscalls/sys_enter_name_to_handle_at")`)
+ requireContains(t, output, "struct path_event *ev")
+ requireContains(t, output, "ev->event_type = ENTER_PATH_EVENT;")
+ requireContains(t, output, "ev->trace_id = SYS_ENTER_NAME_TO_HANDLE_AT;")
+ requireContains(t, output, "bpf_probe_read_user_str(ev->pathname, sizeof(ev->pathname), (void*)ctx->args[1]);")
+}
+
func TestGenerateIgnoredComment(t *testing.T) {
output := generateFromPair(t, FormatKill, FormatExitKill)