Re: [PATCH bpf-next 5/6] selftests/bpf: replace test_progs and test_maps w/ general rule

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

 



On Tue, Oct 15, 2019 at 4:41 PM Alexei Starovoitov <ast@xxxxxx> wrote:
>
> On 10/15/19 3:03 PM, Andrii Nakryiko wrote:
> > Define test runner generation meta-rule that codifies dependencies
> > between test runner, its tests, and its dependent BPF programs. Use that
> > for defining test_progs and test_maps test-runners. Also additionally define
> > 3 flavors of test_progs:
> > - alu32, which builds BPF programs with 32-bit registers codegen;
> > - bpf_gcc, which build BPF programs using GCC, if it supports BPF target;
> > - native, which uses a mix of native Clang target and BPF target for LLC.
>
> Great improvement, but it's taking it too far.
> (clang  -I. -I/data/users/ast/net-next/tools/testing/selftests/bpf -g
> -D__TARGET_ARCH_x86 -I. -I./include/uapi
> -I/data/users/ast/net-next/tools/include/uapi
> -I/data/users/ast/net-next/tools/lib/bpf
> -I/data/users/ast/net-next/tools/testing/selftests/usr/include
> -idirafter /usr/local/include -idirafter
> /data/users/ast/llvm/bld/lib/clang/10.0.0/include -idirafter
> /usr/include -Wno-compare-distinct-pointer-types -O2 -emit-llvm -c
> progs/test_core_reloc_existence.c -o - || echo "BPF obj compilation
> failed") | llc -march=bpf -mcpu=probe   -filetype=obj -o
> /data/users/ast/net-next/tools/testing/selftests/bpf/native/test_core_reloc_existence.o
> progs/test_core_reloc_existence.c:47:18: error: use of unknown builtin
> '__builtin_preserve_field_info' [-Wimplicit-function-declaration]
>          out->a_exists = bpf_core_field_exists(in->a);

Do you use latest clang that supports __builtin_preserve_field_info()?
All the flavors are building just fine for me with latest clang.

>
> native clang + llc is useful for old school tracing only (before CO-RE).

Don't disagree (I actually have little context why we needed this
special case at all), but I had no errors or warnings whatsoever. I
think in this particular case it's not specific to test_progs-native
build, can you please double-check on your side?



[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