On 1/7/26 07:12, Alexei Starovoitov wrote:
> On Fri Jun 26, 2026 at 8:43 AM PDT, Leon Hwang wrote:
[...]
> 
> I don't think we need such fallback in patch [3].

Do you mean we can add the internal BPF_ADDR_PERCPU insn support to the
interpreter?

See my reply in "PROBLEM: BPF interpreter fallback after JIT compilation
of BPF_ADDR_PERCPU leads to kernel panic" thread [1].

[1]
https://lore.kernel.org/bpf/[email protected]/

> 
> And approach taken by this set also doesn't scale, since it splits
> the verifier/JIT logic into core.c which will be hard to keep consistent.
> I think we need another bit like jit_requested in prog like 'must_jit'
> that the verifier set for addr_space_cast, kfuncs and the rest.
> 
> Then the core.c change will be:
> diff --git a/kernel/bpf/core.c b/kernel/bpf/core.c
> index 649cce41e13f..5126a43c1b81 100644
> --- a/kernel/bpf/core.c
> +++ b/kernel/bpf/core.c
> @@ -2620,7 +2620,7 @@ struct bpf_prog *__bpf_prog_select_runtime(struct 
> bpf_verifier_env *env, struct
>                 goto finalize;
> 
>         if (IS_ENABLED(CONFIG_BPF_JIT_ALWAYS_ON) ||
> -           bpf_prog_has_kfunc_call(fp))
> +           fp->must_jit)
>                 jit_needed = true;
> 

Got it. Will follow your suggestion.

Thanks,
Leon


Reply via email to