selftests/bpf: Fix vfs_link kprobe definition
authorNikolay Borisov <nborisov@suse.com>
Thu, 31 Mar 2022 14:09:49 +0000 (17:09 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:22:30 +0000 (10:22 +0200)
[ Upstream commit e299bcd4d16ff86f46c48df1062c8aae0eca1ed8 ]

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
Signed-off-by: Sasha Levin <sashal@kernel.org>
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);