selftests/bpf: Fix vfs_link kprobe definition
authorNikolay Borisov <nborisov@suse.com>
Thu, 31 Mar 2022 14:09:49 +0000 (17:09 +0300)
committerAndrii Nakryiko <andrii@kernel.org>
Sun, 3 Apr 2022 23:41:24 +0000 (16:41 -0700)
Since commit 6521f8917082 ("namei: prepare for idmapped mounts")
vfs_link's prototype was changed, the kprobe definition in
profiler selftest in turn wasn't updated. The result is that all
argument after the first are now stored in different registers. This
means that self-test has been broken ever since. Fix it by updating the
kprobe definition accordingly.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20220331140949.1410056-1-nborisov@suse.com
tools/testing/selftests/bpf/progs/profiler.inc.h

index 4896fdf..9233105 100644 (file)
@@ -826,8 +826,9 @@ out:
 
 SEC("kprobe/vfs_link")
 int BPF_KPROBE(kprobe__vfs_link,
-              struct dentry* old_dentry, struct inode* dir,
-              struct dentry* new_dentry, struct inode** delegated_inode)
+              struct dentry* old_dentry, struct user_namespace *mnt_userns,
+              struct inode* dir, struct dentry* new_dentry,
+              struct inode** delegated_inode)
 {
        struct bpf_func_stats_ctx stats_ctx;
        bpf_stats_enter(&stats_ctx, profiler_bpf_vfs_link);