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 4896fdf816f73ab361b8ebd7f39c332d8fbde3c2..92331053dba3b6bfff23a4050a6d0ecd7bae40d3 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);