diff options
author | Denys Zagorui <dzagorui@cisco.com> | 2023-10-19 04:35:21 -0700 |
---|---|---|
committer | Andrii Nakryiko <andrii@kernel.org> | 2023-10-23 09:58:15 -0700 |
commit | 69a19170303ff2f802049be94cfcf62f714002a3 (patch) | |
tree | 3ba34c839669e39d7c8b9efd24f809e2e75e6f58 /samples | |
parent | cf559a416f9bc061f3b96f8afc6ceae5eec9b2b0 (diff) | |
download | linux-stable-69a19170303ff2f802049be94cfcf62f714002a3.tar.gz linux-stable-69a19170303ff2f802049be94cfcf62f714002a3.tar.bz2 linux-stable-69a19170303ff2f802049be94cfcf62f714002a3.zip |
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: Denys Zagorui <dzagorui@cisco.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20231019113521.4103825-1-dzagorui@cisco.com
Diffstat (limited to 'samples')
-rw-r--r-- | samples/bpf/syscall_tp_kern.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/samples/bpf/syscall_tp_kern.c b/samples/bpf/syscall_tp_kern.c index 090fecfe641a..58fef969a60e 100644 --- a/samples/bpf/syscall_tp_kern.c +++ b/samples/bpf/syscall_tp_kern.c @@ -4,6 +4,7 @@ #include <uapi/linux/bpf.h> #include <bpf/bpf_helpers.h> +#if !defined(__aarch64__) struct syscalls_enter_open_args { unsigned long long unused; long syscall_nr; @@ -11,6 +12,7 @@ struct syscalls_enter_open_args { long flags; long mode; }; +#endif struct syscalls_exit_open_args { unsigned long long unused; @@ -18,6 +20,15 @@ struct syscalls_exit_open_args { 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 { __uint(type, BPF_MAP_TYPE_ARRAY); __type(key, u32); @@ -54,14 +65,14 @@ int trace_enter_open(struct syscalls_enter_open_args *ctx) #endif 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); return 0; } 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); return 0; |