diff options
| author | Dmitry Torokhov <[email protected]> | 2023-05-01 15:20:08 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <[email protected]> | 2023-05-01 15:20:08 -0700 | 
| commit | 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e (patch) | |
| tree | d57f3a63479a07b4e0cece029886e76e04feb984 /tools/testing/selftests/bpf/progs/bpf_syscall_macro.c | |
| parent | 5dc63e56a9cf8df0b59c234a505a1653f1bdf885 (diff) | |
| parent | 53bea86b5712c7491bb3dae12e271666df0a308c (diff) | |
Merge branch 'next' into for-linus
Prepare input updates for 6.4 merge window.
Diffstat (limited to 'tools/testing/selftests/bpf/progs/bpf_syscall_macro.c')
| -rw-r--r-- | tools/testing/selftests/bpf/progs/bpf_syscall_macro.c | 26 | 
1 files changed, 26 insertions, 0 deletions
diff --git a/tools/testing/selftests/bpf/progs/bpf_syscall_macro.c b/tools/testing/selftests/bpf/progs/bpf_syscall_macro.c index e1e11897e99b..1a476d8ed354 100644 --- a/tools/testing/selftests/bpf/progs/bpf_syscall_macro.c +++ b/tools/testing/selftests/bpf/progs/bpf_syscall_macro.c @@ -81,4 +81,30 @@ int BPF_KSYSCALL(prctl_enter, int option, unsigned long arg2,  	return 0;  } +__u64 splice_fd_in; +__u64 splice_off_in; +__u64 splice_fd_out; +__u64 splice_off_out; +__u64 splice_len; +__u64 splice_flags; + +SEC("ksyscall/splice") +int BPF_KSYSCALL(splice_enter, int fd_in, loff_t *off_in, int fd_out, +		 loff_t *off_out, size_t len, unsigned int flags) +{ +	pid_t pid = bpf_get_current_pid_tgid() >> 32; + +	if (pid != filter_pid) +		return 0; + +	splice_fd_in = fd_in; +	splice_off_in = (__u64)off_in; +	splice_fd_out = fd_out; +	splice_off_out = (__u64)off_out; +	splice_len = len; +	splice_flags = flags; + +	return 0; +} +  char _license[] SEC("license") = "GPL";  |