Re: [PATCH bpf-next v4] selftests/bpf: use auto-dependencies for test objects

Eduard Zingerman
2024-07-23T00:57:44Z

On Mon, 2024-07-22 at 17:39 -0700, Alexei Starovoitov wrote:

[...]

> Andrii, Ihor,
>
> not sure what happened, but 'make clean' now takes forever.
> Pls take a look.

It happens under certain conditions, here is a scenario that behaves
badly for me:
- two branches:
- 'master' at cca09a371fa7
- 'tmp' with [0] applied on top of master
- Steps to repro:

# cd selftests directory
$ git checkout tmp
$ git clean -xfd . # be careful
$ make -j test_progs
$ git checkout master
$ make clean

After which output looks as follows:

CLNG-BPF [test_maps] access_map_in_map.bpf.o
GEN-SKEL [test_progs] access_map_in_map.skel.h
CLNG-BPF [test_maps] arena_atomics.bpf.o
GEN-SKEL [test_progs] arena_atomics.skel.h
CLNG-BPF [test_maps] arena_htab_asm.bpf.o
GEN-SKEL [test_progs] arena_htab_asm.skel.h
CLNG-BPF [test_maps] arena_htab.bpf.o
GEN-SKEL [test_progs] arena_htab.skel.h
CLNG-BPF [test_maps] arena_list.bpf.o
GEN-SKEL [test_progs] arena_list.skel.h
CLNG-BPF [test_maps] async_stack_depth.bpf.o
GEN-SKEL [test_progs] async_stack_depth.skel.h
CLNG-BPF [test_maps] atomic_bounds.bpf.o
GEN-SKEL [test_progs] atomic_bounds.skel.h
CLNG-BPF [test_maps] bad_struct_ops2.bpf.o
GEN-SKEL [test_progs] bad_struct_ops2.skel.h
CLNG-BPF [test_maps] bad_struct_ops.bpf.o
GEN-SKEL [test_progs] bad_struct_ops.skel.h
CLNG-BPF [test_maps] bench_local_storage_create.bpf.o
GEN-SKEL [test_progs] bench_local_storage_create.skel.h
CLNG-BPF [test_maps] bind4_prog.bpf.o
GEN-SKEL [test_progs] bind4_prog.skel.h
...

[0] https://lore.kernel.org/bpf/20240719110059.797546-1-xukuohai@huaweicloud.com/