On Thu, Dec 19, 2019 at 12:08 PM Daniel Borkmann <daniel@xxxxxxxxxxxxx> wrote: > > On 12/19/19 8:33 PM, Jesper Dangaard Brouer wrote: > > On Wed, 18 Dec 2019 16:39:08 -0800 > > Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote: > > > >> On Wed, Dec 18, 2019 at 4:04 AM Jesper Dangaard Brouer > >> <brouer@xxxxxxxxxx> wrote: > >>> > >>> On Wed, 18 Dec 2019 12:39:53 +0100 > >>> Björn Töpel <bjorn.topel@xxxxxxxxx> wrote: > >>> > >>>> On Wed, 18 Dec 2019 at 12:11, Jesper Dangaard Brouer <brouer@xxxxxxxxxx> wrote: > >>>>> > >>>>> On Wed, 18 Dec 2019 11:53:52 +0100 > >>>>> Björn Töpel <bjorn.topel@xxxxxxxxx> wrote: > >>>>> > >>>>>> $ sudo ./xdp_redirect_cpu --dev enp134s0f0 --cpu 22 xdp_cpu_map0 > >>>>>> > >>>>>> Running XDP/eBPF prog_name:xdp_cpu_map5_lb_hash_ip_pairs > >>>>>> XDP-cpumap CPU:to pps drop-pps extra-info > >>>>>> XDP-RX 20 7723038 0 0 > >>>>>> XDP-RX total 7723038 0 > >>>>>> cpumap_kthread total 0 0 0 > >>>>>> redirect_err total 0 0 > >>>>>> xdp_exception total 0 0 > >>>>> > >>>>> Hmm... I'm missing some counters on the kthread side. > >>>>> > >>>> > >>>> Oh? Any ideas why? I just ran the upstream sample straight off. > >>> > >>> Looks like it happened in commit: bbaf6029c49c ("samples/bpf: Convert > >>> XDP samples to libbpf usage") (Cc Maciej). > >>> > >>> The old bpf_load.c will auto attach the tracepoints... for and libbpf > >>> you have to be explicit about it. > >> > >> ... or you can use skeleton, which will auto-attach them as well, > >> provided BPF program's section names follow expected naming > >> convention. So it might be a good idea to try it out. > > > > To Andrii, can you provide some more info on how to use this new > > skeleton system of yours? (Pointers to code examples?) > > There's a man page ;-) > > https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git/tree/tools/bpf/bpftool/Documentation/bpftool-gen.rst Also see runqslower patch set for end-to-end set up. There are a bunch of selftests already using skeletons (test_attach_probe, test_core_extern, test_skeleton).