mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 10:09:10 +02:00
Merge branch 'allow-calling-kfuncs-from-raw_tp-programs'
Puranjay Mohan says: ==================== Allow calling kfuncs from raw_tp programs V1: https://lore.kernel.org/all/20251218145514.339819-1-puranjay@kernel.org/ Changes in V1->V2: - Update selftests to allow success for raw_tp programs calling kfuncs. This set enables calling kfuncs from raw_tp programs. ==================== Link: https://patch.msgid.link/20251222133250.1890587-1-puranjay@kernel.org Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
commit
b0004a8223
|
|
@ -8681,6 +8681,7 @@ static int bpf_prog_type_to_kfunc_hook(enum bpf_prog_type prog_type)
|
|||
return BTF_KFUNC_HOOK_STRUCT_OPS;
|
||||
case BPF_PROG_TYPE_TRACING:
|
||||
case BPF_PROG_TYPE_TRACEPOINT:
|
||||
case BPF_PROG_TYPE_RAW_TRACEPOINT:
|
||||
case BPF_PROG_TYPE_PERF_EVENT:
|
||||
case BPF_PROG_TYPE_LSM:
|
||||
return BTF_KFUNC_HOOK_TRACING;
|
||||
|
|
|
|||
|
|
@ -1465,7 +1465,7 @@ int xdp_invalid_data_slice2(struct xdp_md *xdp)
|
|||
}
|
||||
|
||||
/* Only supported prog type can create skb-type dynptrs */
|
||||
SEC("?raw_tp")
|
||||
SEC("?xdp")
|
||||
__failure __msg("calling kernel function bpf_dynptr_from_skb is not allowed")
|
||||
int skb_invalid_ctx(void *ctx)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ static void task_kfunc_load_test(void)
|
|||
}
|
||||
|
||||
SEC("raw_tp")
|
||||
__failure __msg("calling kernel function")
|
||||
__success
|
||||
int BPF_PROG(task_kfunc_raw_tp)
|
||||
{
|
||||
task_kfunc_load_test();
|
||||
|
|
@ -86,7 +86,7 @@ static void cgrp_kfunc_load_test(void)
|
|||
}
|
||||
|
||||
SEC("raw_tp")
|
||||
__failure __msg("calling kernel function")
|
||||
__success
|
||||
int BPF_PROG(cgrp_kfunc_raw_tp)
|
||||
{
|
||||
cgrp_kfunc_load_test();
|
||||
|
|
@ -138,7 +138,7 @@ static void cpumask_kfunc_load_test(void)
|
|||
}
|
||||
|
||||
SEC("raw_tp")
|
||||
__failure __msg("calling kernel function")
|
||||
__success
|
||||
int BPF_PROG(cpumask_kfunc_raw_tp)
|
||||
{
|
||||
cpumask_kfunc_load_test();
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user