mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ian Rogers <irogers@google.com>
To: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
	Adrian Hunter <adrian.hunter@intel.com>,
	Nathan Chancellor <nathan@kernel.org>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Tom Rix <trix@redhat.com>, Fangrui Song <maskray@google.com>,
	Anshuman Khandual <anshuman.khandual@arm.com>,
	Andi Kleen <ak@linux.intel.com>, Leo Yan <leo.yan@linaro.org>,
	Madhavan Srinivasan <maddy@linux.ibm.com>,
	Carsten Haitzler <carsten.haitzler@arm.com>,
	Ravi Bangoria <ravi.bangoria@amd.com>,
	"Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>,
	Athira Rajeev <atrajeev@linux.vnet.ibm.com>,
	Kan Liang <kan.liang@linux.intel.com>,
	Yang Jihong <yangjihong1@huawei.com>,
	James Clark <james.clark@arm.com>,
	Tiezhu Yang <yangtiezhu@loongson.cn>,
	Eduard Zingerman <eddyz87@gmail.com>,
	Andrii Nakryiko <andrii@kernel.org>, Yonghong Song <yhs@fb.com>,
	Rob Herring <robh@kernel.org>,
	linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
	bpf@vger.kernel.org, llvm@lists.linux.dev,
	Wang Nan <wangnan0@huawei.com>,
	Wang ShaoBo <bobo.shaobowang@huawei.com>,
	YueHaibing <yuehaibing@huawei.com>, He Kuang <hekuang@huawei.com>,
	Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: Ian Rogers <irogers@google.com>
Subject: [PATCH v1 0/4] Remove BPF event support
Date: Thu, 10 Aug 2023 11:48:49 -0700	[thread overview]
Message-ID: <20230810184853.2860737-1-irogers@google.com> (raw)

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".

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(-)
 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


             reply	other threads:[~2023-08-10 18:49 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-10 18:48 Ian Rogers [this message]
2023-08-10 18:48 ` [PATCH v1 1/4] perf parse-events: " Ian Rogers
2023-08-11 14:43   ` Arnaldo Carvalho de Melo
2023-08-11 15:41     ` Arnaldo Carvalho de Melo
2023-10-19 19:45       ` Manu Bretelle
2023-10-19 21:08         ` Arnaldo Carvalho de Melo
2023-10-19 21:57           ` Ian Rogers
2023-10-19 22:48           ` Manu Bretelle
2023-10-20 20:39             ` Arnaldo Carvalho de Melo
2023-10-20 22:37               ` Manu Bretelle
2023-10-23  9:01                 ` Quentin Monnet
2023-08-10 18:48 ` [PATCH v1 2/4] perf trace: Migrate BPF augmentation to use a skeleton Ian Rogers
2023-08-11 16:09   ` Jiri Olsa
2023-08-11 16:24     ` Ian Rogers
2023-08-11 18:46   ` Arnaldo Carvalho de Melo
2023-08-15 14:25   ` Arnaldo Carvalho de Melo
     [not found]     ` <CAP-5=fURf+vv3TA4cRx1MiV3DDp=3wo0g5dBYH43DKtPhNZQsQ@mail.gmail.com>
2023-08-16 13:11       ` Arnaldo Carvalho de Melo
2023-08-16 13:22         ` Arnaldo Carvalho de Melo
2023-08-16 16:08           ` Arnaldo Carvalho de Melo
2023-08-16 17:14             ` Arnaldo Carvalho de Melo
2023-08-16 18:15             ` Ian Rogers
2023-08-10 18:48 ` [PATCH v1 3/4] perf bpf examples: With no BPF events remove examples Ian Rogers
2023-08-10 18:48 ` [PATCH v1 4/4] perf trace: Tidy comments Ian Rogers
2023-08-11 16:09 ` [PATCH v1 0/4] Remove BPF event support Jiri Olsa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230810184853.2860737-1-irogers@google.com \
    --to=irogers@google.com \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=andrii@kernel.org \
    --cc=anshuman.khandual@arm.com \
    --cc=atrajeev@linux.vnet.ibm.com \
    --cc=bobo.shaobowang@huawei.com \
    --cc=bpf@vger.kernel.org \
    --cc=brendan.d.gregg@gmail.com \
    --cc=carsten.haitzler@arm.com \
    --cc=eddyz87@gmail.com \
    --cc=hekuang@huawei.com \
    --cc=james.clark@arm.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=leo.yan@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=maddy@linux.ibm.com \
    --cc=mark.rutland@arm.com \
    --cc=maskray@google.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=nathan@kernel.org \
    --cc=naveen.n.rao@linux.vnet.ibm.com \
    --cc=ndesaulniers@google.com \
    --cc=peterz@infradead.org \
    --cc=ravi.bangoria@amd.com \
    --cc=robh@kernel.org \
    --cc=trix@redhat.com \
    --cc=wangnan0@huawei.com \
    --cc=yangjihong1@huawei.com \
    --cc=yangtiezhu@loongson.cn \
    --cc=yhs@fb.com \
    --cc=yuehaibing@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®