Re: [PATCH bpf] selftests/bpf: Re-add kfunc declarations to qdisc tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jul 1, 2025 at 12:43 PM Viktor Malik <vmalik@xxxxxxxxxx> wrote:
>
> On 7/1/25 19:46, Alexei Starovoitov wrote:
> > On Mon, Jun 30, 2025 at 6:35 AM Viktor Malik <vmalik@xxxxxxxxxx> wrote:
> >>
> >> BPF selftests compilation fails on systems with CONFIG_NET_SCH_BPF=n.
> >> The reason is that qdisc-related kfuncs are included via vmlinux.h but
> >> when qdisc is disabled, they are not defined and do not appear in
> >> vmlinux.h.
> >
> > Yes and that's expected behavior. It's not a bug.
> > That's why we have CONFIG_NET_SCH_BPF=y in
> > selftests/bpf/config
> > and CI picks it up automatically.
> >
> > If we add these kfuncs to bpf_qdisc_common.h where would we
> > draw the line when the kfuncs should be added or not ?
>
> I'd say that we should add kfuncs which are only included in vmlinux.h
> under certain configurations. Obviously stuff like CONFIG_BPF=y can be
> presumed but there're tons of configs options which may be disabled on a
> system and it still makes sense to compile and run at least a part of
> test_progs on them.
>
> > Currently we don't add any new kfuncs, since they all
> > should be in vmlinux.h
>
> This way, we're preventing people to build and therefore run *any*
> test_progs on systems which do not have all the configs required in
> selftests/bpf/config. Running selftests on such systems may reveal bugs
> not captured by the CI so I think that it may be eventually beneficial
> for everyone.

Not quite. What's stopping people to build selftests
with 'make -k' ?
Some bpf progs will not compile, but test_progs binary will be built and
it will run the rest of the tests.

We can take this patch, but let's define the rules for adding
kfuncs explicitly.
What are you proposing exactly ?
Anything that is gated by some CONFIG_FOO _must_ be added explicitly ?
Assuming we won't be going back and retroactively adding them ?





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux