[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZNZdRfkWqqZVltt+@krava>
Date: Fri, 11 Aug 2023 18:09:41 +0200
From: Jiri Olsa <olsajiri@...il.com>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Namhyung Kim <namhyung@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Tom Rix <trix@...hat.com>, Fangrui Song <maskray@...gle.com>,
Anshuman Khandual <anshuman.khandual@....com>,
Andi Kleen <ak@...ux.intel.com>, Leo Yan <leo.yan@...aro.org>,
Madhavan Srinivasan <maddy@...ux.ibm.com>,
Carsten Haitzler <carsten.haitzler@....com>,
Ravi Bangoria <ravi.bangoria@....com>,
"Naveen N. Rao" <naveen.n.rao@...ux.vnet.ibm.com>,
Athira Rajeev <atrajeev@...ux.vnet.ibm.com>,
Kan Liang <kan.liang@...ux.intel.com>,
Yang Jihong <yangjihong1@...wei.com>,
James Clark <james.clark@....com>,
Tiezhu Yang <yangtiezhu@...ngson.cn>,
Eduard Zingerman <eddyz87@...il.com>,
Andrii Nakryiko <andrii@...nel.org>,
Yonghong Song <yhs@...com>, Rob Herring <robh@...nel.org>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org,
bpf@...r.kernel.org, llvm@...ts.linux.dev,
Wang Nan <wangnan0@...wei.com>,
Wang ShaoBo <bobo.shaobowang@...wei.com>,
YueHaibing <yuehaibing@...wei.com>,
He Kuang <hekuang@...wei.com>,
Brendan Gregg <brendan.d.gregg@...il.com>
Subject: Re: [PATCH v1 0/4] Remove BPF event support
On Thu, Aug 10, 2023 at 11:48:49AM -0700, Ian Rogers wrote:
> The patch series removes BPF event support as past commits have shown
> the support has bit rotten:
> https://lore.kernel.org/lkml/20230728001212.457900-1-irogers@google.com/
>
> Similar functionality is now available via the --filter option, that
> uses a BPF skeleton, and is therefore more compact and simpler to
> use. The simplicity coming from not having to build BPF object files.
>
> A different use case for the events was for syscall augmentation in
> perf trace. So that this isn't broken, and to make its use
> significantly simpler, the support is migrated to use a BPF
> skeleton. This means perf trace is much more likely to augment
> syscalls for users.
>
> Removal of BPF events was raised on LKML two weeks ago with the
> original authors cc-ed:
> https://lore.kernel.org/lkml/CAP-5=fXxGimJRXKf7bcaPqfjxxGcn1k3CspY_iSjQnpAKs3uFQ@mail.gmail.com/
>
> BPF events are described publicly in very few places but one is:
> https://www.brendangregg.com/perf.html#eBPF
> "eBPF is currently a little restricted and difficult to use from
> perf. It's getting better all the time. A different and currently
> easier way to access eBPF is via the bcc Python interface, which is
> described on my eBPF Tools page. On this page, I'll discuss perf."
>
> I don't think the "getting better all the time" is any longer true as
> BPF features are being added to perf primarily by using BPF
> skeletons. The given example is a filter and would be better supported
> via "perf record --filter".
agreed, I don't think it's being really used as well,
also caused problems with libbpf updates
>
> Ian Rogers (4):
> perf parse-events: Remove BPF event support
> perf trace: Migrate BPF augmentation to use a skeleton
> perf bpf examples: With no BPF events remove examples
> perf trace: Tidy comments
>
> tools/perf/Documentation/perf-config.txt | 33 -
> tools/perf/Documentation/perf-record.txt | 22 -
> tools/perf/Makefile.config | 43 -
> tools/perf/Makefile.perf | 19 +-
> tools/perf/builtin-record.c | 45 -
> tools/perf/builtin-trace.c | 310 +--
> tools/perf/examples/bpf/5sec.c | 53 -
> tools/perf/examples/bpf/empty.c | 12 -
> tools/perf/examples/bpf/hello.c | 27 -
> tools/perf/examples/bpf/sys_enter_openat.c | 33 -
> tools/perf/perf.c | 2 -
> tools/perf/tests/.gitignore | 5 -
> tools/perf/tests/Build | 31 -
> tools/perf/tests/bpf-script-example.c | 60 -
> tools/perf/tests/bpf-script-test-kbuild.c | 21 -
> tools/perf/tests/bpf-script-test-prologue.c | 49 -
> tools/perf/tests/bpf-script-test-relocation.c | 51 -
> tools/perf/tests/bpf.c | 390 ----
> tools/perf/tests/builtin-test.c | 3 -
> tools/perf/tests/clang.c | 32 -
> tools/perf/tests/llvm.c | 219 --
> tools/perf/tests/llvm.h | 31 -
> tools/perf/tests/make | 2 -
> tools/perf/tests/tests.h | 2 -
> tools/perf/trace/beauty/beauty.h | 15 +-
> tools/perf/util/Build | 8 +-
> tools/perf/util/bpf-loader.c | 2006 -----------------
> tools/perf/util/bpf-loader.h | 216 --
> .../bpf_skel/augmented_raw_syscalls.bpf.c} | 35 +-
> tools/perf/util/c++/Build | 5 -
> tools/perf/util/c++/clang-c.h | 43 -
> tools/perf/util/c++/clang-test.cpp | 67 -
> tools/perf/util/c++/clang.cpp | 225 --
> tools/perf/util/c++/clang.h | 27 -
> tools/perf/util/config.c | 4 -
> tools/perf/util/llvm-utils.c | 612 -----
> tools/perf/util/llvm-utils.h | 69 -
> tools/perf/util/parse-events.c | 268 ---
> tools/perf/util/parse-events.h | 15 -
> tools/perf/util/parse-events.l | 31 -
> tools/perf/util/parse-events.y | 44 +-
> 41 files changed, 133 insertions(+), 5052 deletions(-)
awesome :))
Acked-by: Jiri Olsa <jolsa@...nel.org>
thanks,
jirka
> delete mode 100644 tools/perf/examples/bpf/5sec.c
> delete mode 100644 tools/perf/examples/bpf/empty.c
> delete mode 100644 tools/perf/examples/bpf/hello.c
> delete mode 100644 tools/perf/examples/bpf/sys_enter_openat.c
> delete mode 100644 tools/perf/tests/.gitignore
> delete mode 100644 tools/perf/tests/bpf-script-example.c
> delete mode 100644 tools/perf/tests/bpf-script-test-kbuild.c
> delete mode 100644 tools/perf/tests/bpf-script-test-prologue.c
> delete mode 100644 tools/perf/tests/bpf-script-test-relocation.c
> delete mode 100644 tools/perf/tests/bpf.c
> delete mode 100644 tools/perf/tests/clang.c
> delete mode 100644 tools/perf/tests/llvm.c
> delete mode 100644 tools/perf/tests/llvm.h
> delete mode 100644 tools/perf/util/bpf-loader.c
> delete mode 100644 tools/perf/util/bpf-loader.h
> rename tools/perf/{examples/bpf/augmented_raw_syscalls.c => util/bpf_skel/augmented_raw_syscalls.bpf.c} (93%)
> delete mode 100644 tools/perf/util/c++/Build
> delete mode 100644 tools/perf/util/c++/clang-c.h
> delete mode 100644 tools/perf/util/c++/clang-test.cpp
> delete mode 100644 tools/perf/util/c++/clang.cpp
> delete mode 100644 tools/perf/util/c++/clang.h
> delete mode 100644 tools/perf/util/llvm-utils.c
> delete mode 100644 tools/perf/util/llvm-utils.h
>
> --
> 2.41.0.640.ga95def55d0-goog
>
Powered by blists - more mailing lists