lkml.org 
[lkml]   [2023]   [Jan]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v2 0/3] Assume libbpf 1.0+
    On Sun, Jan 15, 2023 at 5:01 PM Ian Rogers <irogers@google.com> wrote:
    >
    > libbpf 1.0 was a major change in API. Perf has partially supported
    > older libbpf's but an implementation may be:
    > ..
    > pr_err("%s: not support, update libbpf\n", __func__);
    > return -ENOTSUP;
    > ..
    >
    > Rather than build a binary that would fail at runtime it is
    > preferrential just to build libbpf statically and link against
    > that. The static version is in the kernel tools tree and newer than
    > 1.0.
    >
    > These patches change the libbpf test to only pass when at least
    > version 1.0 is installed, then remove the conditional build and
    > feature logic.
    >
    > The issue is discussed here:
    > https://lore.kernel.org/lkml/20230106151320.619514-1-irogers@google.com/
    > perf bpf:
    >
    > A variant of this fix was added to Linux 6.2 in:
    > "perf bpf: Avoid build breakage with libbpf < 0.8.0 + LIBBPF_DYNAMIC=1"
    > https://lore.kernel.org/lkml/Y71+eh00Ju7WeEFX@kernel.org/
    > This change goes further in removing logic that is now no longer
    > necessary.
    >
    > v2. Rebase now that breakage fix patch is in linus/master.

    I missed the:
    Acked/Tested-by: Jiri Olsa <jolsa@kernel.org>
    I believe we are waiting for package maintainer input.

    Thanks,
    Ian



    > Ian Rogers (3):
    > tools build: Pass libbpf feature only if libbpf 1.0+
    > perf build: Remove libbpf pre-1.0 feature tests
    > perf bpf: Remove pre libbpf 1.0 conditional logic
    >
    > tools/build/feature/Makefile | 7 --
    > .../feature/test-libbpf-bpf_map_create.c | 8 ---
    > .../test-libbpf-bpf_object__next_map.c | 8 ---
    > .../test-libbpf-bpf_object__next_program.c | 8 ---
    > .../build/feature/test-libbpf-bpf_prog_load.c | 9 ---
    > .../test-libbpf-bpf_program__set_insns.c | 8 ---
    > .../test-libbpf-btf__load_from_kernel_by_id.c | 8 ---
    > .../build/feature/test-libbpf-btf__raw_data.c | 8 ---
    > tools/build/feature/test-libbpf.c | 4 ++
    > tools/perf/Makefile.config | 39 +----------
    > tools/perf/util/bpf-event.c | 66 -------------------
    > tools/perf/util/bpf-loader.c | 18 -----
    > tools/perf/util/bpf_counter.c | 18 -----
    > 13 files changed, 5 insertions(+), 204 deletions(-)
    > delete mode 100644 tools/build/feature/test-libbpf-bpf_map_create.c
    > delete mode 100644 tools/build/feature/test-libbpf-bpf_object__next_map.c
    > delete mode 100644 tools/build/feature/test-libbpf-bpf_object__next_program.c
    > delete mode 100644 tools/build/feature/test-libbpf-bpf_prog_load.c
    > delete mode 100644 tools/build/feature/test-libbpf-bpf_program__set_insns.c
    > delete mode 100644 tools/build/feature/test-libbpf-btf__load_from_kernel_by_id.c
    > delete mode 100644 tools/build/feature/test-libbpf-btf__raw_data.c
    >
    > --
    > 2.39.0.314.g84b9a713c41-goog
    >

    \
     
     \ /
      Last update: 2023-03-26 23:47    [W:7.359 / U:0.556 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site