Commit 69a19170 authored by Denys Zagorui's avatar Denys Zagorui Committed by Andrii Nakryiko

samples: bpf: Fix syscall_tp openat argument

This modification doesn't change behaviour of the syscall_tp
But such code is often used as a reference so it should be
correct anyway
Signed-off-by: default avatarDenys Zagorui <dzagorui@cisco.com>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20231019113521.4103825-1-dzagorui@cisco.com
parent cf559a41
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#include <uapi/linux/bpf.h> #include <uapi/linux/bpf.h>
#include <bpf/bpf_helpers.h> #include <bpf/bpf_helpers.h>
#if !defined(__aarch64__)
struct syscalls_enter_open_args { struct syscalls_enter_open_args {
unsigned long long unused; unsigned long long unused;
long syscall_nr; long syscall_nr;
...@@ -11,6 +12,7 @@ struct syscalls_enter_open_args { ...@@ -11,6 +12,7 @@ struct syscalls_enter_open_args {
long flags; long flags;
long mode; long mode;
}; };
#endif
struct syscalls_exit_open_args { struct syscalls_exit_open_args {
unsigned long long unused; unsigned long long unused;
...@@ -18,6 +20,15 @@ struct syscalls_exit_open_args { ...@@ -18,6 +20,15 @@ struct syscalls_exit_open_args {
long ret; long ret;
}; };
struct syscalls_enter_open_at_args {
unsigned long long unused;
long syscall_nr;
long long dfd;
long filename_ptr;
long flags;
long mode;
};
struct { struct {
__uint(type, BPF_MAP_TYPE_ARRAY); __uint(type, BPF_MAP_TYPE_ARRAY);
__type(key, u32); __type(key, u32);
...@@ -54,14 +65,14 @@ int trace_enter_open(struct syscalls_enter_open_args *ctx) ...@@ -54,14 +65,14 @@ int trace_enter_open(struct syscalls_enter_open_args *ctx)
#endif #endif
SEC("tracepoint/syscalls/sys_enter_openat") SEC("tracepoint/syscalls/sys_enter_openat")
int trace_enter_open_at(struct syscalls_enter_open_args *ctx) int trace_enter_open_at(struct syscalls_enter_open_at_args *ctx)
{ {
count(&enter_open_map); count(&enter_open_map);
return 0; return 0;
} }
SEC("tracepoint/syscalls/sys_enter_openat2") SEC("tracepoint/syscalls/sys_enter_openat2")
int trace_enter_open_at2(struct syscalls_enter_open_args *ctx) int trace_enter_open_at2(struct syscalls_enter_open_at_args *ctx)
{ {
count(&enter_open_map); count(&enter_open_map);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment