mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-06 05:02:31 +00:00
bpf: allow bpf_fastcall for bpf_cast_to_kern_ctx and bpf_rdonly_cast
do_misc_fixups() relaces bpf_cast_to_kern_ctx() and bpf_rdonly_cast() by a single instruction "r0 = r1". This follows bpf_fastcall contract. This commit allows bpf_fastcall pattern rewrite for these two functions in order to use them in bpf_fastcall selftests. Acked-by: Yonghong Song <yonghong.song@linux.dev> Signed-off-by: Eduard Zingerman <eddyz87@gmail.com> Link: https://lore.kernel.org/r/20240822084112.3257995-5-eddyz87@gmail.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
b2ee6d27e9
commit
4060909324
@ -16170,6 +16170,9 @@ static u32 kfunc_fastcall_clobber_mask(struct bpf_kfunc_call_arg_meta *meta)
|
||||
/* Same as verifier_inlines_helper_call() but for kfuncs, see comment above */
|
||||
static bool is_fastcall_kfunc_call(struct bpf_kfunc_call_arg_meta *meta)
|
||||
{
|
||||
if (meta->btf == btf_vmlinux)
|
||||
return meta->func_id == special_kfunc_list[KF_bpf_cast_to_kern_ctx] ||
|
||||
meta->func_id == special_kfunc_list[KF_bpf_rdonly_cast];
|
||||
return false;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user