lkml.org 
[lkml]   [2015]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [RFC PATCH v9 02/50] tools build: Add feature check for eBPF API
    Em Fri, Jun 26, 2015 at 02:15:07PM +0000, Wang Nan escreveu:
    > In this patch, eBPF API is checked by compiling a c source file which
    > uses fields in bpf_attr which will be used by libbpf.
    >
    > Signed-off-by: Wang Nan <wangnan0@huawei.com>
    > Acked-by: Alexei Starovoitov <ast@plumgrid.com>

    So, I just applied this and after trying:

    [acme@felicio linux]$ rm -rf /tmp/build/perf ; mkdir -p /tmp/build/perf
    ; make O=/tmp/build/perf -C tools/perf install-bin
    make: Entering directory `/home/acme/git/linux/tools/perf'
    BUILD: Doing 'make -j4' parallel build

    Auto-detecting system features:
    ... dwarf: [ on ]
    ... glibc: [ on ]
    ... gtk2: [ on ]
    ... libaudit: [ on ]
    ... libbfd: [ on ]
    ... libelf: [ on ]
    ... libnuma: [ on ]
    ... libperl: [ on ]
    ... libpython: [ on ]
    ... libslang: [ on ]
    ... libunwind: [ on ]
    ... libdw-dwarf-unwind: [ on ]
    ... zlib: [ on ]
    ... lzma: [ on ]
    ... bpf: [ OFF ]

    MKDIR /tmp/build/perf/util/
    CC /tmp/build/perf/util/abspath.o

    --------------------------------------------------------

    So, what should I do now? I want to have that OFF line turned to "on",
    so that I can test this stuff.

    But the changelog says nothing about it, lemme check the cover letter,
    but having to do that is annoying, one expects to have instructions
    related to some specific changeset in its comments...

    - Arnaldo


    > ---
    > tools/build/Makefile.feature | 6 ++++--
    > tools/build/feature/Makefile | 6 +++++-
    > tools/build/feature/test-bpf.c | 18 ++++++++++++++++++
    > 3 files changed, 27 insertions(+), 3 deletions(-)
    > create mode 100644 tools/build/feature/test-bpf.c
    >
    > diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature
    > index 2975632..5ec6b37 100644
    > --- a/tools/build/Makefile.feature
    > +++ b/tools/build/Makefile.feature
    > @@ -51,7 +51,8 @@ FEATURE_TESTS ?= \
    > timerfd \
    > libdw-dwarf-unwind \
    > zlib \
    > - lzma
    > + lzma \
    > + bpf
    >
    > FEATURE_DISPLAY ?= \
    > dwarf \
    > @@ -67,7 +68,8 @@ FEATURE_DISPLAY ?= \
    > libunwind \
    > libdw-dwarf-unwind \
    > zlib \
    > - lzma
    > + lzma \
    > + bpf
    >
    > # Set FEATURE_CHECK_(C|LD)FLAGS-all for all FEATURE_TESTS features.
    > # If in the future we need per-feature checks/flags for features not
    > diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile
    > index 463ed8f..1c0d69f 100644
    > --- a/tools/build/feature/Makefile
    > +++ b/tools/build/feature/Makefile
    > @@ -33,7 +33,8 @@ FILES= \
    > test-compile-32.bin \
    > test-compile-x32.bin \
    > test-zlib.bin \
    > - test-lzma.bin
    > + test-lzma.bin \
    > + test-bpf.bin
    >
    > CC := $(CROSS_COMPILE)gcc -MD
    > PKG_CONFIG := $(CROSS_COMPILE)pkg-config
    > @@ -156,6 +157,9 @@ test-zlib.bin:
    > test-lzma.bin:
    > $(BUILD) -llzma
    >
    > +test-bpf.bin:
    > + $(BUILD)
    > +
    > -include *.d
    >
    > ###############################
    > diff --git a/tools/build/feature/test-bpf.c b/tools/build/feature/test-bpf.c
    > new file mode 100644
    > index 0000000..062bac8
    > --- /dev/null
    > +++ b/tools/build/feature/test-bpf.c
    > @@ -0,0 +1,18 @@
    > +#include <linux/bpf.h>
    > +
    > +int main(void)
    > +{
    > + union bpf_attr attr;
    > +
    > + attr.prog_type = BPF_PROG_TYPE_KPROBE;
    > + attr.insn_cnt = 0;
    > + attr.insns = 0;
    > + attr.license = 0;
    > + attr.log_buf = 0;
    > + attr.log_size = 0;
    > + attr.log_level = 0;
    > + attr.kern_version = 0;
    > +
    > + attr = attr;
    > + return 0;
    > +}
    > --
    > 1.8.3.4

    \
     
     \ /
      Last update: 2015-06-29 21:41    [W:4.029 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site