On Wed, Oct 26, 2016 at 12:37:53AM +0200, Daniel Borkmann wrote:
> Some of the sample files are causing issues when they are loaded with tc
> and cls_bpf, meaning tc bails out while trying to parse the resulting ELF
> file as program/map/etc sections are not present, which can be easily
> spotted with readelf(1).
> 
> Currently, BPF samples are including some of the kernel headers and mid
> term we should change them to refrain from this, really. When dynamic
> debugging is enabled, we bail out due to undeclared KBUILD_MODNAME, which
> is easily overlooked in the build as clang spills this along with other
> noisy warnings from various header includes, and llc still generates an
> ELF file with mentioned characteristics. For just playing around with BPF
> examples, this can be a bit of a hurdle to take.
> 
> Just add a fake KBUILD_MODNAME as a band-aid to fix the issue, same is
> done in xdp*_kern samples already.
> 
> Fixes: 65d472fb007d ("samples/bpf: add 'pointer to packet' tests")
> Fixes: 6afb1e28b859 ("samples/bpf: Add tunnel set/get tests.")
> Fixes: a3f74617340b ("cgroup: bpf: Add an example to do cgroup checking in 
> BPF")
> Reported-by: Chandrasekar Kannan <ckan...@console.to>
> Signed-off-by: Daniel Borkmann <dan...@iogearbox.net>
> ---
>  samples/bpf/parse_ldabs.c        | 1 +
>  samples/bpf/parse_simple.c       | 1 +
>  samples/bpf/parse_varlen.c       | 1 +
>  samples/bpf/tcbpf1_kern.c        | 1 +
>  samples/bpf/tcbpf2_kern.c        | 1 +
>  samples/bpf/test_cgrp2_tc_kern.c | 1 +
>  6 files changed, 6 insertions(+)

It's also needed for all of tracex*_kern.c, right?

For networking samlpes we probably should get rid of kernel headers.
I guess they were there by copy-paste mistake from tracing, since
tracing samples actually need to include them, since they do bpf_probe_read
into kernel data structures.
For this patch in the mean time:
Acked-by: Alexei Starovoitov <a...@kernel.org>

Reply via email to