On Wed, May 29, 2024 at 09:18:48AM -0700, Alexei Starovoitov wrote: > On Wed, May 29, 2024 at 5:44 AM Sebastian Andrzej Siewior > <bigeasy@xxxxxxxxxxxxx> wrote: > > > > bpf_session_cookie() is only available with CONFIG_FPROBE=y leading to > > an unresolved symbol otherwise. > > > > Use BTF_ID_UNUSED instead of bpf_session_cookie for CONFIG_FPROBE=n. > > > > Fixes: 5c919acef8514 ("bpf: Add support for kprobe session cookie") > > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> > > --- > > kernel/bpf/verifier.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c > > index 77da1f438becc..436f72bfcb9b9 100644 > > --- a/kernel/bpf/verifier.c > > +++ b/kernel/bpf/verifier.c > > @@ -11124,7 +11124,11 @@ BTF_ID(func, bpf_iter_css_task_new) > > #else > > BTF_ID_UNUSED > > #endif > > +#ifdef CONFIG_FPROBE > > BTF_ID(func, bpf_session_cookie) > > +#else > > +BTF_ID_UNUSED > > +#endif > > Instead of this fix.. > Jiri, > maybe remove ifdef CONFIG_FPROBE hiding of this kfunc > in kernel/tace/bpf_trace.c ? > The less ifdef-s the better. imo yes, that seems to work Sebastian, do you want to send it as v2 or should I post it? thanks, jirka --- diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c index f5154c051d2c..cc90d56732eb 100644 --- a/kernel/trace/bpf_trace.c +++ b/kernel/trace/bpf_trace.c @@ -3519,7 +3519,6 @@ static u64 bpf_uprobe_multi_entry_ip(struct bpf_run_ctx *ctx) } #endif /* CONFIG_UPROBES */ -#ifdef CONFIG_FPROBE __bpf_kfunc_start_defs(); __bpf_kfunc bool bpf_session_is_return(void) @@ -3568,4 +3567,3 @@ static int __init bpf_kprobe_multi_kfuncs_init(void) } late_initcall(bpf_kprobe_multi_kfuncs_init); -#endif