public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/
@ 2019-03-04  3:14 Aaron Bauman
  0 siblings, 0 replies; 5+ messages in thread
From: Aaron Bauman @ 2019-03-04  3:14 UTC (permalink / raw
  To: gentoo-commits

commit:     d1c490b9c9c522f663e841e4a59baabdac8f5c45
Author:     Michael Mair-Keimberger <m.mairkeimberger <AT> gmail <DOT> com>
AuthorDate: Sun Mar  3 15:57:42 2019 +0000
Commit:     Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Mon Mar  4 03:10:50 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1c490b9

dev-util/perf: remove unused patch(es)

Signed-off-by: Michael Mair-Keimberger <m.mairkeimberger <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/11236
Signed-off-by: Aaron Bauman <bman <AT> gentoo.org>

 dev-util/perf/files/perf-4.1.5-prefix.patch | 43 -----------------------------
 1 file changed, 43 deletions(-)

diff --git a/dev-util/perf/files/perf-4.1.5-prefix.patch b/dev-util/perf/files/perf-4.1.5-prefix.patch
deleted file mode 100644
index 0c4dff01130..00000000000
--- a/dev-util/perf/files/perf-4.1.5-prefix.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-commit 75e84ab906ef8935cff3df3d8929f1bafea81599
-Author: Lukas Wunner <lukas@wunner.de>
-Date:   Thu Jun 18 13:00:32 2015 +0200
-
-    perf tools: Fix build breakage if prefix= is specified
-    
-    Invoking Makefile.perf with prefix= breaks the build since Makefile.perf
-    hands that variable down to Makefile.build where it overrides
-    
-        prefix       := $(subst ./,,$(OUTPUT)$(dir)/)
-    
-    leading to errors like this:
-    
-        No rule to make target '/usrabspath.o', needed by '/usrlibperf-in.o'
-    
-    Signed-off-by: Lukas Wunner <lukas@wunner.de>
-    Acked-by: Jiri Olsa <jolsa@kernel.org>
-    Cc: David Ahern <dsahern@gmail.com>
-    Fixes: c819e2cf2eb6f65d3208d195d7a0edef6108d5
-    Link: http://lkml.kernel.org/r/5582c48a.84a22b0a.a918.5285SMTPIN_ADDED_MISSING@mx.google.com
-    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-
-diff --git a/tools/build/Makefile.build b/tools/build/Makefile.build
-index 10df572..98cfc38 100644
---- a/tools/build/Makefile.build
-+++ b/tools/build/Makefile.build
-@@ -94,12 +94,12 @@ obj-y        := $(patsubst %/, %/$(obj)-in.o, $(obj-y))
- subdir-obj-y := $(filter %/$(obj)-in.o, $(obj-y))
- 
- # '$(OUTPUT)/dir' prefix to all objects
--prefix       := $(subst ./,,$(OUTPUT)$(dir)/)
--obj-y        := $(addprefix $(prefix),$(obj-y))
--subdir-obj-y := $(addprefix $(prefix),$(subdir-obj-y))
-+objprefix    := $(subst ./,,$(OUTPUT)$(dir)/)
-+obj-y        := $(addprefix $(objprefix),$(obj-y))
-+subdir-obj-y := $(addprefix $(objprefix),$(subdir-obj-y))
- 
- # Final '$(obj)-in.o' object
--in-target := $(prefix)$(obj)-in.o
-+in-target := $(objprefix)$(obj)-in.o
- 
- PHONY += $(subdir-y)
- 


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/
@ 2020-01-05  2:04 Georgy Yakovlev
  0 siblings, 0 replies; 5+ messages in thread
From: Georgy Yakovlev @ 2020-01-05  2:04 UTC (permalink / raw
  To: gentoo-commits

commit:     2f0984a4ca63a39961bf113bb2b7bdbfe0442ea8
Author:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Sun Jan  5 02:01:53 2020 +0000
Commit:     Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Sun Jan  5 02:03:27 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f0984a4

dev-util/perf: add missing patch for 5.4.7

Closes: https://bugs.gentoo.org/704798
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>

 .../perf/files/perf-5.4.7-propagate-cflags.patch   | 44 ++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch b/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch
new file mode 100644
index 00000000000..b1a9bcc25a1
--- /dev/null
+++ b/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch
@@ -0,0 +1,44 @@
+From 55542113c690a567e728e40d4181d7d037fc21b0 Mon Sep 17 00:00:00 2001
+From: Jiri Olsa <jolsa@kernel.org>
+Date: Fri, 11 Oct 2019 14:21:55 +0200
+Subject: perf tools: Propagate CFLAGS to libperf
+
+Andi reported that 'make DEBUG=1' does not propagate to the libbperf
+code. It's true also for the other flags. Changing the code to propagate
+the global build flags to libperf compilation.
+
+Reported-by: Andi Kleen <ak@linux.intel.com>
+Signed-off-by: Jiri Olsa <jolsa@kernel.org>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Michael Petlan <mpetlan@redhat.com>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Link: http://lore.kernel.org/lkml/20191011122155.15738-1-jolsa@kernel.org
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+---
+ tools/perf/lib/core.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+(limited to 'tools/perf/lib/core.c')
+
+diff --git a/tools/perf/lib/core.c b/tools/perf/lib/core.c
+index d0b9ae422b9f..58fc894b76c5 100644
+--- a/tools/perf/lib/core.c
++++ b/tools/perf/lib/core.c
+@@ -5,11 +5,12 @@
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <unistd.h>
++#include <linux/compiler.h>
+ #include <perf/core.h>
+ #include <internal/lib.h>
+ #include "internal.h"
+ 
+-static int __base_pr(enum libperf_print_level level, const char *format,
++static int __base_pr(enum libperf_print_level level __maybe_unused, const char *format,
+ 		     va_list args)
+ {
+ 	return vfprintf(stderr, format, args);
+-- 
+cgit 1.2-0.3.lf.el7
+


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/
@ 2021-02-18 23:06 Conrad Kostecki
  0 siblings, 0 replies; 5+ messages in thread
From: Conrad Kostecki @ 2021-02-18 23:06 UTC (permalink / raw
  To: gentoo-commits

commit:     b0e6a7dc74c51984376d4f0a70087ce0d7c26eeb
Author:     Michael Mair-Keimberger <mmk <AT> levelnine <DOT> at>
AuthorDate: Thu Feb 18 16:56:52 2021 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Thu Feb 18 23:02:46 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0e6a7dc

dev-util/perf: remove unused patch(es)

Closes: https://github.com/gentoo/gentoo/pull/19521
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Michael Mair-Keimberger <mmk <AT> levelnine.at>
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 dev-util/perf/files/perf-5.1.15-fix-clang8.patch   | 17 ------
 .../perf/files/perf-5.4.20-binutil-libs-2.34.patch | 60 ----------------------
 dev-util/perf/files/perf-5.4.6-fix-clang9.patch    | 17 ------
 .../perf/files/perf-5.4.7-propagate-cflags.patch   | 44 ----------------
 4 files changed, 138 deletions(-)

diff --git a/dev-util/perf/files/perf-5.1.15-fix-clang8.patch b/dev-util/perf/files/perf-5.1.15-fix-clang8.patch
deleted file mode 100644
index 743f4b017b1..00000000000
--- a/dev-util/perf/files/perf-5.1.15-fix-clang8.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/678652
-Created-By: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
----
---- a/tools/build/feature/test-clang.cpp	2018-12-24 00:55:59.000000000 +0100
-+++ b/tools/build/feature/test-clang.cpp	2019-04-06 16:05:56.828757243 +0200
-@@ -1,10 +1,10 @@
- // SPDX-License-Identifier: GPL-2.0
--#include "clang/Basic/VirtualFileSystem.h"
- #include "clang/Driver/Driver.h"
- #include "clang/Frontend/TextDiagnosticPrinter.h"
- #include "llvm/ADT/IntrusiveRefCntPtr.h"
- #include "llvm/Support/ManagedStatic.h"
- #include "llvm/Support/raw_ostream.h"
-+#include "llvm/Support/VirtualFileSystem.h"
- 
- using namespace clang;
- using namespace clang::driver;

diff --git a/dev-util/perf/files/perf-5.4.20-binutil-libs-2.34.patch b/dev-util/perf/files/perf-5.4.20-binutil-libs-2.34.patch
deleted file mode 100644
index 9fa191f720a..00000000000
--- a/dev-util/perf/files/perf-5.4.20-binutil-libs-2.34.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 0ada120c883d4f1f6aafd01cf0fbb10d8bbba015 Mon Sep 17 00:00:00 2001
-From: Changbin Du <changbin.du@gmail.com>
-Date: Tue, 28 Jan 2020 23:29:38 +0800
-Subject: perf: Make perf able to build with latest libbfd
-
-libbfd has changed the bfd_section_* macros to inline functions
-bfd_section_<field> since 2019-09-18. See below two commits:
-  o http://www.sourceware.org/ml/gdb-cvs/2019-09/msg00064.html
-  o https://www.sourceware.org/ml/gdb-cvs/2019-09/msg00072.html
-
-This fix make perf able to build with both old and new libbfd.
-
-Signed-off-by: Changbin Du <changbin.du@gmail.com>
-Acked-by: Jiri Olsa <jolsa@redhat.com>
-Cc: Peter Zijlstra <peterz@infradead.org>
-Link: http://lore.kernel.org/lkml/20200128152938.31413-1-changbin.du@gmail.com
-Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----
- tools/perf/util/srcline.c | 16 +++++++++++++++-
- 1 file changed, 15 insertions(+), 1 deletion(-)
-
-diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
-index 6ccf6f6..5b7d6c1 100644
---- a/tools/perf/util/srcline.c
-+++ b/tools/perf/util/srcline.c
-@@ -193,16 +193,30 @@ static void find_address_in_section(bfd *abfd, asection *section, void *data)
- 	bfd_vma pc, vma;
- 	bfd_size_type size;
- 	struct a2l_data *a2l = data;
-+	flagword flags;
- 
- 	if (a2l->found)
- 		return;
- 
--	if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
-+#ifdef bfd_get_section_flags
-+	flags = bfd_get_section_flags(abfd, section);
-+#else
-+	flags = bfd_section_flags(section);
-+#endif
-+	if ((flags & SEC_ALLOC) == 0)
- 		return;
- 
- 	pc = a2l->addr;
-+#ifdef bfd_get_section_vma
- 	vma = bfd_get_section_vma(abfd, section);
-+#else
-+	vma = bfd_section_vma(section);
-+#endif
-+#ifdef bfd_get_section_size
- 	size = bfd_get_section_size(section);
-+#else
-+	size = bfd_section_size(section);
-+#endif
- 
- 	if (pc < vma || pc >= vma + size)
- 		return;
--- 
-cgit v1.1
-

diff --git a/dev-util/perf/files/perf-5.4.6-fix-clang9.patch b/dev-util/perf/files/perf-5.4.6-fix-clang9.patch
deleted file mode 100644
index 614e62f676d..00000000000
--- a/dev-util/perf/files/perf-5.4.6-fix-clang9.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/695726
-Created-By: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
-Created-By: Dennis Schridde <devurandom@gmx.net>
---- a/tools/perf/util/c++/clang.cpp.orig	2019-12-20 16:39:21.015363866 +0100
-+++ b/tools/perf/util/c++/clang.cpp	2019-12-20 16:40:04.051639185 +0100
-@@ -71,7 +71,11 @@
- 	CompilerInstance Clang;
- 	Clang.createDiagnostics();
- 
-+#if CLANG_VERSION_MAJOR < 9
- 	Clang.setVirtualFileSystem(&*VFS);
-+#else
-+	Clang.createFileManager(&*VFS);
-+#endif
- 
- #if CLANG_VERSION_MAJOR < 4
- 	IntrusiveRefCntPtr<CompilerInvocation> CI =

diff --git a/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch b/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch
deleted file mode 100644
index b1a9bcc25a1..00000000000
--- a/dev-util/perf/files/perf-5.4.7-propagate-cflags.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 55542113c690a567e728e40d4181d7d037fc21b0 Mon Sep 17 00:00:00 2001
-From: Jiri Olsa <jolsa@kernel.org>
-Date: Fri, 11 Oct 2019 14:21:55 +0200
-Subject: perf tools: Propagate CFLAGS to libperf
-
-Andi reported that 'make DEBUG=1' does not propagate to the libbperf
-code. It's true also for the other flags. Changing the code to propagate
-the global build flags to libperf compilation.
-
-Reported-by: Andi Kleen <ak@linux.intel.com>
-Signed-off-by: Jiri Olsa <jolsa@kernel.org>
-Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
-Cc: Michael Petlan <mpetlan@redhat.com>
-Cc: Namhyung Kim <namhyung@kernel.org>
-Cc: Peter Zijlstra <peterz@infradead.org>
-Link: http://lore.kernel.org/lkml/20191011122155.15738-1-jolsa@kernel.org
-Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
----
- tools/perf/lib/core.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-(limited to 'tools/perf/lib/core.c')
-
-diff --git a/tools/perf/lib/core.c b/tools/perf/lib/core.c
-index d0b9ae422b9f..58fc894b76c5 100644
---- a/tools/perf/lib/core.c
-+++ b/tools/perf/lib/core.c
-@@ -5,11 +5,12 @@
- #include <stdio.h>
- #include <stdarg.h>
- #include <unistd.h>
-+#include <linux/compiler.h>
- #include <perf/core.h>
- #include <internal/lib.h>
- #include "internal.h"
- 
--static int __base_pr(enum libperf_print_level level, const char *format,
-+static int __base_pr(enum libperf_print_level level __maybe_unused, const char *format,
- 		     va_list args)
- {
- 	return vfprintf(stderr, format, args);
--- 
-cgit 1.2-0.3.lf.el7
-


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/
@ 2024-03-18 20:00 Conrad Kostecki
  0 siblings, 0 replies; 5+ messages in thread
From: Conrad Kostecki @ 2024-03-18 20:00 UTC (permalink / raw
  To: gentoo-commits

commit:     9ae67d65c63c3236ec11a8f94439af32e0637fa3
Author:     Michael Mair-Keimberger <mmk <AT> levelnine <DOT> at>
AuthorDate: Sun Mar 17 12:23:44 2024 +0000
Commit:     Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Mon Mar 18 20:00:22 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ae67d65

dev-util/perf: remove unused patch

Signed-off-by: Michael Mair-Keimberger <mmk <AT> levelnine.at>
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>

 dev-util/perf/files/perf-6.6-ia64.patch | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/dev-util/perf/files/perf-6.6-ia64.patch b/dev-util/perf/files/perf-6.6-ia64.patch
deleted file mode 100644
index 111efe2ff2e7..000000000000
--- a/dev-util/perf/files/perf-6.6-ia64.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/tools/arch/ia64/include/asm/barrier.h b/tools/arch/ia64/include/asm/barrier.h
-index 6fffe5682713..9753f11d79ad 100644
---- a/tools/arch/ia64/include/asm/barrier.h
-+++ b/tools/arch/ia64/include/asm/barrier.h
-@@ -14,6 +14,7 @@
- #ifndef _TOOLS_LINUX_ASM_IA64_BARRIER_H
- #define _TOOLS_LINUX_ASM_IA64_BARRIER_H
-
-+#include <asm/intrinsics.h>
- #include <linux/compiler.h>
-
- /*


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/
@ 2024-11-19 10:49 Guilherme Amadio
  0 siblings, 0 replies; 5+ messages in thread
From: Guilherme Amadio @ 2024-11-19 10:49 UTC (permalink / raw
  To: gentoo-commits

commit:     6a78e0d02acdaa1f5583b3b9d36d87decdd5b784
Author:     Guilherme Amadio <amadio <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 19 10:48:25 2024 +0000
Commit:     Guilherme Amadio <amadio <AT> gentoo <DOT> org>
CommitDate: Tue Nov 19 10:48:25 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a78e0d0

dev-util/perf/files: drop unused patches

Signed-off-by: Guilherme Amadio <amadio <AT> gentoo.org>

 dev-util/perf/files/perf-6.10-bpf-capstone.patch   | 456 --------------------
 dev-util/perf/files/perf-6.10-expr.patch           |  22 -
 dev-util/perf/files/perf-6.10.3-bpf-capstone.patch | 455 --------------------
 dev-util/perf/files/perf-6.11-bpf-capstone.patch   | 469 ---------------------
 4 files changed, 1402 deletions(-)

diff --git a/dev-util/perf/files/perf-6.10-bpf-capstone.patch b/dev-util/perf/files/perf-6.10-bpf-capstone.patch
deleted file mode 100644
index ebae9a3ad080..000000000000
--- a/dev-util/perf/files/perf-6.10-bpf-capstone.patch
+++ /dev/null
@@ -1,456 +0,0 @@
-From a7728af2f25fe99ee72d211bb4ddec17a8601f5f Mon Sep 17 00:00:00 2001
-From: Guilherme Amadio <amadio@gentoo.org>
-Date: Tue, 6 Aug 2024 11:34:05 +0200
-Subject: [PATCH]  Fix bug #936439. Replay of upstream commit onto v6.10.
-
-Signed-off-by: Guilherme Amadio <amadio@gentoo.org>
----
- tools/perf/util/Build        |   1 +
- tools/perf/util/disasm.c     | 187 +--------------------------------
- tools/perf/util/disasm_bpf.c | 197 +++++++++++++++++++++++++++++++++++
- tools/perf/util/disasm_bpf.h |  12 +++
- 4 files changed, 211 insertions(+), 186 deletions(-)
- create mode 100644 tools/perf/util/disasm_bpf.c
- create mode 100644 tools/perf/util/disasm_bpf.h
-
-diff --git a/tools/perf/util/Build b/tools/perf/util/Build
-index da64efd8718f..384c4e06b838 100644
---- a/tools/perf/util/Build
-+++ b/tools/perf/util/Build
-@@ -13,6 +13,7 @@ perf-y += copyfile.o
- perf-y += ctype.o
- perf-y += db-export.o
- perf-y += disasm.o
-+perf-y += disasm_bpf.o
- perf-y += env.o
- perf-y += event.o
- perf-y += evlist.o
-diff --git a/tools/perf/util/disasm.c b/tools/perf/util/disasm.c
-index 72aec8f61b94..766cbd005f32 100644
---- a/tools/perf/util/disasm.c
-+++ b/tools/perf/util/disasm.c
-@@ -15,6 +15,7 @@
- #include "build-id.h"
- #include "debug.h"
- #include "disasm.h"
-+#include "disasm_bpf.h"
- #include "dso.h"
- #include "env.h"
- #include "evsel.h"
-@@ -1164,192 +1165,6 @@ static int dso__disassemble_filename(struct dso *dso, char *filename, size_t fil
- 	return 0;
- }
- 
--#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--#define PACKAGE "perf"
--#include <bfd.h>
--#include <dis-asm.h>
--#include <bpf/bpf.h>
--#include <bpf/btf.h>
--#include <bpf/libbpf.h>
--#include <linux/btf.h>
--#include <tools/dis-asm-compat.h>
--
--#include "bpf-event.h"
--#include "bpf-utils.h"
--
--static int symbol__disassemble_bpf(struct symbol *sym,
--				   struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct bpf_prog_linfo *prog_linfo = NULL;
--	struct bpf_prog_info_node *info_node;
--	int len = sym->end - sym->start;
--	disassembler_ftype disassemble;
--	struct map *map = args->ms.map;
--	struct perf_bpil *info_linear;
--	struct disassemble_info info;
--	struct dso *dso = map__dso(map);
--	int pc = 0, count, sub_id;
--	struct btf *btf = NULL;
--	char tpath[PATH_MAX];
--	size_t buf_size;
--	int nr_skip = 0;
--	char *buf;
--	bfd *bfdf;
--	int ret;
--	FILE *s;
--
--	if (dso->binary_type != DSO_BINARY_TYPE__BPF_PROG_INFO)
--		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
--
--	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
--		  sym->name, sym->start, sym->end - sym->start);
--
--	memset(tpath, 0, sizeof(tpath));
--	perf_exe(tpath, sizeof(tpath));
--
--	bfdf = bfd_openr(tpath, NULL);
--	if (bfdf == NULL)
--		abort();
--
--	if (!bfd_check_format(bfdf, bfd_object))
--		abort();
--
--	s = open_memstream(&buf, &buf_size);
--	if (!s) {
--		ret = errno;
--		goto out;
--	}
--	init_disassemble_info_compat(&info, s,
--				     (fprintf_ftype) fprintf,
--				     fprintf_styled);
--	info.arch = bfd_get_arch(bfdf);
--	info.mach = bfd_get_mach(bfdf);
--
--	info_node = perf_env__find_bpf_prog_info(dso->bpf_prog.env,
--						 dso->bpf_prog.id);
--	if (!info_node) {
--		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
--		goto out;
--	}
--	info_linear = info_node->info_linear;
--	sub_id = dso->bpf_prog.sub_id;
--
--	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
--	info.buffer_length = info_linear->info.jited_prog_len;
--
--	if (info_linear->info.nr_line_info)
--		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
--
--	if (info_linear->info.btf_id) {
--		struct btf_node *node;
--
--		node = perf_env__find_btf(dso->bpf_prog.env,
--					  info_linear->info.btf_id);
--		if (node)
--			btf = btf__new((__u8 *)(node->data),
--				       node->data_size);
--	}
--
--	disassemble_init_for_target(&info);
--
--#ifdef DISASM_FOUR_ARGS_SIGNATURE
--	disassemble = disassembler(info.arch,
--				   bfd_big_endian(bfdf),
--				   info.mach,
--				   bfdf);
--#else
--	disassemble = disassembler(bfdf);
--#endif
--	if (disassemble == NULL)
--		abort();
--
--	fflush(s);
--	do {
--		const struct bpf_line_info *linfo = NULL;
--		struct disasm_line *dl;
--		size_t prev_buf_size;
--		const char *srcline;
--		u64 addr;
--
--		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
--		count = disassemble(pc, &info);
--
--		if (prog_linfo)
--			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
--								addr, sub_id,
--								nr_skip);
--
--		if (linfo && btf) {
--			srcline = btf__name_by_offset(btf, linfo->line_off);
--			nr_skip++;
--		} else
--			srcline = NULL;
--
--		fprintf(s, "\n");
--		prev_buf_size = buf_size;
--		fflush(s);
--
--		if (!annotate_opts.hide_src_code && srcline) {
--			args->offset = -1;
--			args->line = strdup(srcline);
--			args->line_nr = 0;
--			args->fileloc = NULL;
--			args->ms.sym  = sym;
--			dl = disasm_line__new(args);
--			if (dl) {
--				annotation_line__add(&dl->al,
--						     &notes->src->source);
--			}
--		}
--
--		args->offset = pc;
--		args->line = buf + prev_buf_size;
--		args->line_nr = 0;
--		args->fileloc = NULL;
--		args->ms.sym  = sym;
--		dl = disasm_line__new(args);
--		if (dl)
--			annotation_line__add(&dl->al, &notes->src->source);
--
--		pc += count;
--	} while (count > 0 && pc < len);
--
--	ret = 0;
--out:
--	free(prog_linfo);
--	btf__free(btf);
--	fclose(s);
--	bfd_close(bfdf);
--	return ret;
--}
--#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--static int symbol__disassemble_bpf(struct symbol *sym __maybe_unused,
--				   struct annotate_args *args __maybe_unused)
--{
--	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
--}
--#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--
--static int
--symbol__disassemble_bpf_image(struct symbol *sym,
--			      struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct disasm_line *dl;
--
--	args->offset = -1;
--	args->line = strdup("to be implemented");
--	args->line_nr = 0;
--	args->fileloc = NULL;
--	dl = disasm_line__new(args);
--	if (dl)
--		annotation_line__add(&dl->al, &notes->src->source);
--
--	zfree(&args->line);
--	return 0;
--}
--
- #ifdef HAVE_LIBCAPSTONE_SUPPORT
- #include <capstone/capstone.h>
- 
-diff --git a/tools/perf/util/disasm_bpf.c b/tools/perf/util/disasm_bpf.c
-new file mode 100644
-index 000000000000..010b961c4ae9
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.c
-@@ -0,0 +1,197 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#include "util/annotate.h"
-+#include "util/disasm_bpf.h"
-+#include "util/symbol.h"
-+#include <linux/zalloc.h>
-+#include <string.h>
-+
-+#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+#define PACKAGE "perf"
-+#include <bfd.h>
-+#include <bpf/bpf.h>
-+#include <bpf/btf.h>
-+#include <bpf/libbpf.h>
-+#include <dis-asm.h>
-+#include <errno.h>
-+#include <linux/btf.h>
-+#include <tools/dis-asm-compat.h>
-+
-+#include "util/bpf-event.h"
-+#include "util/bpf-utils.h"
-+#include "util/debug.h"
-+#include "util/dso.h"
-+#include "util/map.h"
-+#include "util/env.h"
-+#include "util/util.h"
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct bpf_prog_linfo *prog_linfo = NULL;
-+	struct bpf_prog_info_node *info_node;
-+	int len = sym->end - sym->start;
-+	disassembler_ftype disassemble;
-+	struct map *map = args->ms.map;
-+	struct perf_bpil *info_linear;
-+	struct disassemble_info info;
-+	struct dso *dso = map__dso(map);
-+	int pc = 0, count, sub_id;
-+	struct btf *btf = NULL;
-+	char tpath[PATH_MAX];
-+	size_t buf_size;
-+	int nr_skip = 0;
-+	char *buf;
-+	bfd *bfdf;
-+	int ret;
-+	FILE *s;
-+
-+	if (dso->binary_type != DSO_BINARY_TYPE__BPF_PROG_INFO)
-+		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
-+
-+	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
-+		  sym->name, sym->start, sym->end - sym->start);
-+
-+	memset(tpath, 0, sizeof(tpath));
-+	perf_exe(tpath, sizeof(tpath));
-+
-+	bfdf = bfd_openr(tpath, NULL);
-+	if (bfdf == NULL)
-+		abort();
-+
-+	if (!bfd_check_format(bfdf, bfd_object))
-+		abort();
-+
-+	s = open_memstream(&buf, &buf_size);
-+	if (!s) {
-+		ret = errno;
-+		goto out;
-+	}
-+	init_disassemble_info_compat(&info, s,
-+				     (fprintf_ftype) fprintf,
-+				     fprintf_styled);
-+	info.arch = bfd_get_arch(bfdf);
-+	info.mach = bfd_get_mach(bfdf);
-+
-+	info_node = perf_env__find_bpf_prog_info(dso->bpf_prog.env,
-+						 dso->bpf_prog.id);
-+	if (!info_node) {
-+		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
-+		goto out;
-+	}
-+	info_linear = info_node->info_linear;
-+	sub_id = dso->bpf_prog.sub_id;
-+
-+	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
-+	info.buffer_length = info_linear->info.jited_prog_len;
-+
-+	if (info_linear->info.nr_line_info)
-+		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
-+
-+	if (info_linear->info.btf_id) {
-+		struct btf_node *node;
-+
-+		node = perf_env__find_btf(dso->bpf_prog.env,
-+					  info_linear->info.btf_id);
-+		if (node)
-+			btf = btf__new((__u8 *)(node->data),
-+				       node->data_size);
-+	}
-+
-+	disassemble_init_for_target(&info);
-+
-+#ifdef DISASM_FOUR_ARGS_SIGNATURE
-+	disassemble = disassembler(info.arch,
-+				   bfd_big_endian(bfdf),
-+				   info.mach,
-+				   bfdf);
-+#else
-+	disassemble = disassembler(bfdf);
-+#endif
-+	if (disassemble == NULL)
-+		abort();
-+
-+	fflush(s);
-+	do {
-+		const struct bpf_line_info *linfo = NULL;
-+		struct disasm_line *dl;
-+		size_t prev_buf_size;
-+		const char *srcline;
-+		u64 addr;
-+
-+		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
-+		count = disassemble(pc, &info);
-+
-+		if (prog_linfo)
-+			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
-+								addr, sub_id,
-+								nr_skip);
-+
-+		if (linfo && btf) {
-+			srcline = btf__name_by_offset(btf, linfo->line_off);
-+			nr_skip++;
-+		} else
-+			srcline = NULL;
-+
-+		fprintf(s, "\n");
-+		prev_buf_size = buf_size;
-+		fflush(s);
-+
-+		if (!annotate_opts.hide_src_code && srcline) {
-+			args->offset = -1;
-+			args->line = strdup(srcline);
-+			args->line_nr = 0;
-+			args->fileloc = NULL;
-+			args->ms.sym  = sym;
-+			dl = disasm_line__new(args);
-+			if (dl) {
-+				annotation_line__add(&dl->al,
-+						     &notes->src->source);
-+			}
-+		}
-+
-+		args->offset = pc;
-+		args->line = buf + prev_buf_size;
-+		args->line_nr = 0;
-+		args->fileloc = NULL;
-+		args->ms.sym  = sym;
-+		dl = disasm_line__new(args);
-+		if (dl)
-+			annotation_line__add(&dl->al, &notes->src->source);
-+
-+		pc += count;
-+	} while (count > 0 && pc < len);
-+
-+	ret = 0;
-+out:
-+	free(prog_linfo);
-+	btf__free(btf);
-+	fclose(s);
-+	bfd_close(bfdf);
-+	return ret;
-+}
-+#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+int symbol__disassemble_bpf(struct symbol *sym __maybe_unused,
-+				   struct annotate_args *args __maybe_unused)
-+{
-+	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
-+}
-+#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+
-+int symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct disasm_line *dl;
-+
-+	args->offset = -1;
-+	args->line = strdup("to be implemented");
-+	args->line_nr = 0;
-+	args->fileloc = NULL;
-+	dl = disasm_line__new(args);
-+	if (dl)
-+		annotation_line__add(&dl->al, &notes->src->source);
-+
-+	zfree(&args->line);
-+	return 0;
-+}
-+
-diff --git a/tools/perf/util/disasm_bpf.h b/tools/perf/util/disasm_bpf.h
-new file mode 100644
-index 000000000000..2ecb19545388
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.h
-@@ -0,0 +1,12 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#ifndef __PERF_DISASM_BPF_H
-+#define __PERF_DISASM_BPF_H
-+
-+struct symbol;
-+struct annotate_args;
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args);
-+int symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args);
-+
-+#endif /* __PERF_DISASM_BPF_H */
--- 
-2.45.2
-

diff --git a/dev-util/perf/files/perf-6.10-expr.patch b/dev-util/perf/files/perf-6.10-expr.patch
deleted file mode 100644
index b4220a062f61..000000000000
--- a/dev-util/perf/files/perf-6.10-expr.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
-index bc980fd..a7f1e1e 100644
---- a/tools/perf/Makefile.config
-+++ b/tools/perf/Makefile.config
-@@ -1184,7 +1184,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
-     CFLAGS += -DHAVE_LIBTRACEEVENT $(LIBTRACEEVENT_CFLAGS)
-     LDFLAGS += $(LIBTRACEEVENT_LDFLAGS)
-     EXTLIBS += ${TRACEEVENTLIBS}
--    LIBTRACEEVENT_VERSION := $(shell PKG_CONFIG_PATH=$(LIBTRACEEVENT_DIR) $(PKG_CONFIG) --modversion libtraceevent)
-+    LIBTRACEEVENT_VERSION := $(shell PKG_CONFIG_PATH=$(LIBTRACEEVENT_DIR) $(PKG_CONFIG) --modversion libtraceevent).0
-     LIBTRACEEVENT_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
-     LIBTRACEEVENT_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
-     LIBTRACEEVENT_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
-@@ -1198,7 +1198,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
-   $(call feature_check,libtracefs)
-   ifeq ($(feature-libtracefs), 1)
-     EXTLIBS += -ltracefs
--    LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs)
-+    LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs).0
-     LIBTRACEFS_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEFS_VERSION)))
-     LIBTRACEFS_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEFS_VERSION)))
-     LIBTRACEFS_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEFS_VERSION)))

diff --git a/dev-util/perf/files/perf-6.10.3-bpf-capstone.patch b/dev-util/perf/files/perf-6.10.3-bpf-capstone.patch
deleted file mode 100644
index 57b298d8ccd7..000000000000
--- a/dev-util/perf/files/perf-6.10.3-bpf-capstone.patch
+++ /dev/null
@@ -1,455 +0,0 @@
-From b382a433e0178d3840a8fb4b05ba3dbecba075fa Mon Sep 17 00:00:00 2001
-From: Guilherme Amadio <amadio@gentoo.org>
-Date: Tue, 6 Aug 2024 11:34:05 +0200
-Subject: [PATCH]  Fix bug #936439. Replay of upstream commit onto v6.10.3.
-
-Signed-off-by: Guilherme Amadio <amadio@gentoo.org>
----
- tools/perf/util/Build        |   1 +
- tools/perf/util/disasm.c     | 187 +--------------------------------
- tools/perf/util/disasm_bpf.c | 196 +++++++++++++++++++++++++++++++++++
- tools/perf/util/disasm_bpf.h |  12 +++
- 4 files changed, 210 insertions(+), 186 deletions(-)
- create mode 100644 tools/perf/util/disasm_bpf.c
- create mode 100644 tools/perf/util/disasm_bpf.h
-
-diff --git a/tools/perf/util/Build b/tools/perf/util/Build
-index da64efd8718f..384c4e06b838 100644
---- a/tools/perf/util/Build
-+++ b/tools/perf/util/Build
-@@ -13,6 +13,7 @@ perf-y += copyfile.o
- perf-y += ctype.o
- perf-y += db-export.o
- perf-y += disasm.o
-+perf-y += disasm_bpf.o
- perf-y += env.o
- perf-y += event.o
- perf-y += evlist.o
-diff --git a/tools/perf/util/disasm.c b/tools/perf/util/disasm.c
-index e10558b79504..766cbd005f32 100644
---- a/tools/perf/util/disasm.c
-+++ b/tools/perf/util/disasm.c
-@@ -15,6 +15,7 @@
- #include "build-id.h"
- #include "debug.h"
- #include "disasm.h"
-+#include "disasm_bpf.h"
- #include "dso.h"
- #include "env.h"
- #include "evsel.h"
-@@ -1164,192 +1165,6 @@ static int dso__disassemble_filename(struct dso *dso, char *filename, size_t fil
- 	return 0;
- }
- 
--#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--#define PACKAGE "perf"
--#include <bfd.h>
--#include <dis-asm.h>
--#include <bpf/bpf.h>
--#include <bpf/btf.h>
--#include <bpf/libbpf.h>
--#include <linux/btf.h>
--#include <tools/dis-asm-compat.h>
--
--#include "bpf-event.h"
--#include "bpf-utils.h"
--
--static int symbol__disassemble_bpf(struct symbol *sym,
--				   struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct bpf_prog_linfo *prog_linfo = NULL;
--	struct bpf_prog_info_node *info_node;
--	int len = sym->end - sym->start;
--	disassembler_ftype disassemble;
--	struct map *map = args->ms.map;
--	struct perf_bpil *info_linear;
--	struct disassemble_info info;
--	struct dso *dso = map__dso(map);
--	int pc = 0, count, sub_id;
--	struct btf *btf = NULL;
--	char tpath[PATH_MAX];
--	size_t buf_size;
--	int nr_skip = 0;
--	char *buf;
--	bfd *bfdf;
--	int ret;
--	FILE *s;
--
--	if (dso__binary_type(dso) != DSO_BINARY_TYPE__BPF_PROG_INFO)
--		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
--
--	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
--		  sym->name, sym->start, sym->end - sym->start);
--
--	memset(tpath, 0, sizeof(tpath));
--	perf_exe(tpath, sizeof(tpath));
--
--	bfdf = bfd_openr(tpath, NULL);
--	if (bfdf == NULL)
--		abort();
--
--	if (!bfd_check_format(bfdf, bfd_object))
--		abort();
--
--	s = open_memstream(&buf, &buf_size);
--	if (!s) {
--		ret = errno;
--		goto out;
--	}
--	init_disassemble_info_compat(&info, s,
--				     (fprintf_ftype) fprintf,
--				     fprintf_styled);
--	info.arch = bfd_get_arch(bfdf);
--	info.mach = bfd_get_mach(bfdf);
--
--	info_node = perf_env__find_bpf_prog_info(dso__bpf_prog(dso)->env,
--						 dso__bpf_prog(dso)->id);
--	if (!info_node) {
--		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
--		goto out;
--	}
--	info_linear = info_node->info_linear;
--	sub_id = dso__bpf_prog(dso)->sub_id;
--
--	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
--	info.buffer_length = info_linear->info.jited_prog_len;
--
--	if (info_linear->info.nr_line_info)
--		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
--
--	if (info_linear->info.btf_id) {
--		struct btf_node *node;
--
--		node = perf_env__find_btf(dso__bpf_prog(dso)->env,
--					  info_linear->info.btf_id);
--		if (node)
--			btf = btf__new((__u8 *)(node->data),
--				       node->data_size);
--	}
--
--	disassemble_init_for_target(&info);
--
--#ifdef DISASM_FOUR_ARGS_SIGNATURE
--	disassemble = disassembler(info.arch,
--				   bfd_big_endian(bfdf),
--				   info.mach,
--				   bfdf);
--#else
--	disassemble = disassembler(bfdf);
--#endif
--	if (disassemble == NULL)
--		abort();
--
--	fflush(s);
--	do {
--		const struct bpf_line_info *linfo = NULL;
--		struct disasm_line *dl;
--		size_t prev_buf_size;
--		const char *srcline;
--		u64 addr;
--
--		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
--		count = disassemble(pc, &info);
--
--		if (prog_linfo)
--			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
--								addr, sub_id,
--								nr_skip);
--
--		if (linfo && btf) {
--			srcline = btf__name_by_offset(btf, linfo->line_off);
--			nr_skip++;
--		} else
--			srcline = NULL;
--
--		fprintf(s, "\n");
--		prev_buf_size = buf_size;
--		fflush(s);
--
--		if (!annotate_opts.hide_src_code && srcline) {
--			args->offset = -1;
--			args->line = strdup(srcline);
--			args->line_nr = 0;
--			args->fileloc = NULL;
--			args->ms.sym  = sym;
--			dl = disasm_line__new(args);
--			if (dl) {
--				annotation_line__add(&dl->al,
--						     &notes->src->source);
--			}
--		}
--
--		args->offset = pc;
--		args->line = buf + prev_buf_size;
--		args->line_nr = 0;
--		args->fileloc = NULL;
--		args->ms.sym  = sym;
--		dl = disasm_line__new(args);
--		if (dl)
--			annotation_line__add(&dl->al, &notes->src->source);
--
--		pc += count;
--	} while (count > 0 && pc < len);
--
--	ret = 0;
--out:
--	free(prog_linfo);
--	btf__free(btf);
--	fclose(s);
--	bfd_close(bfdf);
--	return ret;
--}
--#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--static int symbol__disassemble_bpf(struct symbol *sym __maybe_unused,
--				   struct annotate_args *args __maybe_unused)
--{
--	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
--}
--#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--
--static int
--symbol__disassemble_bpf_image(struct symbol *sym,
--			      struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct disasm_line *dl;
--
--	args->offset = -1;
--	args->line = strdup("to be implemented");
--	args->line_nr = 0;
--	args->fileloc = NULL;
--	dl = disasm_line__new(args);
--	if (dl)
--		annotation_line__add(&dl->al, &notes->src->source);
--
--	zfree(&args->line);
--	return 0;
--}
--
- #ifdef HAVE_LIBCAPSTONE_SUPPORT
- #include <capstone/capstone.h>
- 
-diff --git a/tools/perf/util/disasm_bpf.c b/tools/perf/util/disasm_bpf.c
-new file mode 100644
-index 000000000000..c76a7d2be1a7
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.c
-@@ -0,0 +1,196 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#include "util/annotate.h"
-+#include "util/disasm_bpf.h"
-+#include "util/symbol.h"
-+#include <linux/zalloc.h>
-+#include <string.h>
-+
-+#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+#define PACKAGE "perf"
-+#include <bfd.h>
-+#include <bpf/bpf.h>
-+#include <bpf/btf.h>
-+#include <bpf/libbpf.h>
-+#include <dis-asm.h>
-+#include <errno.h>
-+#include <linux/btf.h>
-+#include <tools/dis-asm-compat.h>
-+
-+#include "util/bpf-event.h"
-+#include "util/bpf-utils.h"
-+#include "util/debug.h"
-+#include "util/dso.h"
-+#include "util/map.h"
-+#include "util/env.h"
-+#include "util/util.h"
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct bpf_prog_linfo *prog_linfo = NULL;
-+	struct bpf_prog_info_node *info_node;
-+	int len = sym->end - sym->start;
-+	disassembler_ftype disassemble;
-+	struct map *map = args->ms.map;
-+	struct perf_bpil *info_linear;
-+	struct disassemble_info info;
-+	struct dso *dso = map__dso(map);
-+	int pc = 0, count, sub_id;
-+	struct btf *btf = NULL;
-+	char tpath[PATH_MAX];
-+	size_t buf_size;
-+	int nr_skip = 0;
-+	char *buf;
-+	bfd *bfdf;
-+	int ret;
-+	FILE *s;
-+
-+	if (dso__binary_type(dso) != DSO_BINARY_TYPE__BPF_PROG_INFO)
-+		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
-+
-+	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
-+		  sym->name, sym->start, sym->end - sym->start);
-+
-+	memset(tpath, 0, sizeof(tpath));
-+	perf_exe(tpath, sizeof(tpath));
-+
-+	bfdf = bfd_openr(tpath, NULL);
-+	if (bfdf == NULL)
-+		abort();
-+
-+	if (!bfd_check_format(bfdf, bfd_object))
-+		abort();
-+
-+	s = open_memstream(&buf, &buf_size);
-+	if (!s) {
-+		ret = errno;
-+		goto out;
-+	}
-+	init_disassemble_info_compat(&info, s,
-+				     (fprintf_ftype) fprintf,
-+				     fprintf_styled);
-+	info.arch = bfd_get_arch(bfdf);
-+	info.mach = bfd_get_mach(bfdf);
-+
-+	info_node = perf_env__find_bpf_prog_info(dso__bpf_prog(dso)->env,
-+						 dso__bpf_prog(dso)->id);
-+	if (!info_node) {
-+		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
-+		goto out;
-+	}
-+	info_linear = info_node->info_linear;
-+	sub_id = dso__bpf_prog(dso)->sub_id;
-+
-+	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
-+	info.buffer_length = info_linear->info.jited_prog_len;
-+
-+	if (info_linear->info.nr_line_info)
-+		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
-+
-+	if (info_linear->info.btf_id) {
-+		struct btf_node *node;
-+
-+		node = perf_env__find_btf(dso__bpf_prog(dso)->env,
-+					  info_linear->info.btf_id);
-+		if (node)
-+			btf = btf__new((__u8 *)(node->data),
-+				       node->data_size);
-+	}
-+
-+	disassemble_init_for_target(&info);
-+
-+#ifdef DISASM_FOUR_ARGS_SIGNATURE
-+	disassemble = disassembler(info.arch,
-+				   bfd_big_endian(bfdf),
-+				   info.mach,
-+				   bfdf);
-+#else
-+	disassemble = disassembler(bfdf);
-+#endif
-+	if (disassemble == NULL)
-+		abort();
-+
-+	fflush(s);
-+	do {
-+		const struct bpf_line_info *linfo = NULL;
-+		struct disasm_line *dl;
-+		size_t prev_buf_size;
-+		const char *srcline;
-+		u64 addr;
-+
-+		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
-+		count = disassemble(pc, &info);
-+
-+		if (prog_linfo)
-+			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
-+								addr, sub_id,
-+								nr_skip);
-+
-+		if (linfo && btf) {
-+			srcline = btf__name_by_offset(btf, linfo->line_off);
-+			nr_skip++;
-+		} else
-+			srcline = NULL;
-+
-+		fprintf(s, "\n");
-+		prev_buf_size = buf_size;
-+		fflush(s);
-+
-+		if (!annotate_opts.hide_src_code && srcline) {
-+			args->offset = -1;
-+			args->line = strdup(srcline);
-+			args->line_nr = 0;
-+			args->fileloc = NULL;
-+			args->ms.sym  = sym;
-+			dl = disasm_line__new(args);
-+			if (dl) {
-+				annotation_line__add(&dl->al,
-+						     &notes->src->source);
-+			}
-+		}
-+
-+		args->offset = pc;
-+		args->line = buf + prev_buf_size;
-+		args->line_nr = 0;
-+		args->fileloc = NULL;
-+		args->ms.sym  = sym;
-+		dl = disasm_line__new(args);
-+		if (dl)
-+			annotation_line__add(&dl->al, &notes->src->source);
-+
-+		pc += count;
-+	} while (count > 0 && pc < len);
-+
-+	ret = 0;
-+out:
-+	free(prog_linfo);
-+	btf__free(btf);
-+	fclose(s);
-+	bfd_close(bfdf);
-+	return ret;
-+}
-+#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+int symbol__disassemble_bpf(struct symbol *sym __maybe_unused, struct annotate_args *args __maybe_unused)
-+{
-+	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
-+}
-+#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+
-+int
-+symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct disasm_line *dl;
-+
-+	args->offset = -1;
-+	args->line = strdup("to be implemented");
-+	args->line_nr = 0;
-+	args->fileloc = NULL;
-+	dl = disasm_line__new(args);
-+	if (dl)
-+		annotation_line__add(&dl->al, &notes->src->source);
-+
-+	zfree(&args->line);
-+	return 0;
-+}
-diff --git a/tools/perf/util/disasm_bpf.h b/tools/perf/util/disasm_bpf.h
-new file mode 100644
-index 000000000000..2ecb19545388
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.h
-@@ -0,0 +1,12 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#ifndef __PERF_DISASM_BPF_H
-+#define __PERF_DISASM_BPF_H
-+
-+struct symbol;
-+struct annotate_args;
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args);
-+int symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args);
-+
-+#endif /* __PERF_DISASM_BPF_H */
--- 
-2.45.2
-

diff --git a/dev-util/perf/files/perf-6.11-bpf-capstone.patch b/dev-util/perf/files/perf-6.11-bpf-capstone.patch
deleted file mode 100644
index 7d8b376869f3..000000000000
--- a/dev-util/perf/files/perf-6.11-bpf-capstone.patch
+++ /dev/null
@@ -1,469 +0,0 @@
-commit ea59b70a8418a313d6f2ab48a957de015fc33018
-Author: Arnaldo Carvalho de Melo <acme@redhat.com>
-Date:   Wed Jul 31 11:58:56 2024 -0300
-
-    perf bpf: Move BPF disassembly routines to separate file to avoid clash with capstone bpf headers
-    
-    There is a clash of the libbpf and capstone libraries, that ends up
-    with:
-    
-      In file included from /usr/include/capstone/capstone.h:325,
-                       from util/disasm.c:1513:
-      /usr/include/capstone/bpf.h:94:14: error: ‘bpf_insn’ defined as wrong kind of tag
-         94 | typedef enum bpf_insn {
-    
-    So far we're just trying to avoid this by not having both headers
-    included in the same .c or .h file, do it one more time by moving the
-    BPF diassembly routines from util/disasm.c to util/disasm_bpf.c.
-    
-    This is only being hit when building with BUILD_NONDISTRO=1, i.e.
-    building with binutils-devel, that isn't the in the default build due to
-    a licencing clash. We need to reimplement what is now isolated in
-    util/disasm_bpf.c using some other library to have BPF annotation
-    feature that now only is available with BUILD_NONDISTRO=1.
-    
-    Fixes: 6d17edc113de1e21 ("perf annotate: Use libcapstone to disassemble")
-    Cc: Adrian Hunter <adrian.hunter@intel.com>
-    Cc: Ian Rogers <irogers@google.com>
-    Cc: Jiri Olsa <jolsa@kernel.org>
-    Cc: Kan Liang <kan.liang@linux.intel.com>
-    Cc: Namhyung Kim <namhyung@kernel.org>
-    Link: https://lore.kernel.org/lkml/ZqpUSKPxMwaQKORr@x1
-    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-
-diff --git a/tools/perf/util/Build b/tools/perf/util/Build
-index 0f18fe81ef0b..b24360c04aae 100644
---- a/tools/perf/util/Build
-+++ b/tools/perf/util/Build
-@@ -13,6 +13,7 @@ perf-util-y += copyfile.o
- perf-util-y += ctype.o
- perf-util-y += db-export.o
- perf-util-y += disasm.o
-+perf-util-y += disasm_bpf.o
- perf-util-y += env.o
- perf-util-y += event.o
- perf-util-y += evlist.o
-diff --git a/tools/perf/util/disasm.c b/tools/perf/util/disasm.c
-index 410e52cd9cfd..85fb0cfedf94 100644
---- a/tools/perf/util/disasm.c
-+++ b/tools/perf/util/disasm.c
-@@ -16,6 +16,7 @@
- #include "build-id.h"
- #include "debug.h"
- #include "disasm.h"
-+#include "disasm_bpf.h"
- #include "dso.h"
- #include "env.h"
- #include "evsel.h"
-@@ -1323,192 +1324,6 @@ static int dso__disassemble_filename(struct dso *dso, char *filename, size_t fil
- 	return 0;
- }
- 
--#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--#define PACKAGE "perf"
--#include <bfd.h>
--#include <dis-asm.h>
--#include <bpf/bpf.h>
--#include <bpf/btf.h>
--#include <bpf/libbpf.h>
--#include <linux/btf.h>
--#include <tools/dis-asm-compat.h>
--
--#include "bpf-event.h"
--#include "bpf-utils.h"
--
--static int symbol__disassemble_bpf(struct symbol *sym,
--				   struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct bpf_prog_linfo *prog_linfo = NULL;
--	struct bpf_prog_info_node *info_node;
--	int len = sym->end - sym->start;
--	disassembler_ftype disassemble;
--	struct map *map = args->ms.map;
--	struct perf_bpil *info_linear;
--	struct disassemble_info info;
--	struct dso *dso = map__dso(map);
--	int pc = 0, count, sub_id;
--	struct btf *btf = NULL;
--	char tpath[PATH_MAX];
--	size_t buf_size;
--	int nr_skip = 0;
--	char *buf;
--	bfd *bfdf;
--	int ret;
--	FILE *s;
--
--	if (dso__binary_type(dso) != DSO_BINARY_TYPE__BPF_PROG_INFO)
--		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
--
--	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
--		  sym->name, sym->start, sym->end - sym->start);
--
--	memset(tpath, 0, sizeof(tpath));
--	perf_exe(tpath, sizeof(tpath));
--
--	bfdf = bfd_openr(tpath, NULL);
--	if (bfdf == NULL)
--		abort();
--
--	if (!bfd_check_format(bfdf, bfd_object))
--		abort();
--
--	s = open_memstream(&buf, &buf_size);
--	if (!s) {
--		ret = errno;
--		goto out;
--	}
--	init_disassemble_info_compat(&info, s,
--				     (fprintf_ftype) fprintf,
--				     fprintf_styled);
--	info.arch = bfd_get_arch(bfdf);
--	info.mach = bfd_get_mach(bfdf);
--
--	info_node = perf_env__find_bpf_prog_info(dso__bpf_prog(dso)->env,
--						 dso__bpf_prog(dso)->id);
--	if (!info_node) {
--		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
--		goto out;
--	}
--	info_linear = info_node->info_linear;
--	sub_id = dso__bpf_prog(dso)->sub_id;
--
--	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
--	info.buffer_length = info_linear->info.jited_prog_len;
--
--	if (info_linear->info.nr_line_info)
--		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
--
--	if (info_linear->info.btf_id) {
--		struct btf_node *node;
--
--		node = perf_env__find_btf(dso__bpf_prog(dso)->env,
--					  info_linear->info.btf_id);
--		if (node)
--			btf = btf__new((__u8 *)(node->data),
--				       node->data_size);
--	}
--
--	disassemble_init_for_target(&info);
--
--#ifdef DISASM_FOUR_ARGS_SIGNATURE
--	disassemble = disassembler(info.arch,
--				   bfd_big_endian(bfdf),
--				   info.mach,
--				   bfdf);
--#else
--	disassemble = disassembler(bfdf);
--#endif
--	if (disassemble == NULL)
--		abort();
--
--	fflush(s);
--	do {
--		const struct bpf_line_info *linfo = NULL;
--		struct disasm_line *dl;
--		size_t prev_buf_size;
--		const char *srcline;
--		u64 addr;
--
--		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
--		count = disassemble(pc, &info);
--
--		if (prog_linfo)
--			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
--								addr, sub_id,
--								nr_skip);
--
--		if (linfo && btf) {
--			srcline = btf__name_by_offset(btf, linfo->line_off);
--			nr_skip++;
--		} else
--			srcline = NULL;
--
--		fprintf(s, "\n");
--		prev_buf_size = buf_size;
--		fflush(s);
--
--		if (!annotate_opts.hide_src_code && srcline) {
--			args->offset = -1;
--			args->line = strdup(srcline);
--			args->line_nr = 0;
--			args->fileloc = NULL;
--			args->ms.sym  = sym;
--			dl = disasm_line__new(args);
--			if (dl) {
--				annotation_line__add(&dl->al,
--						     &notes->src->source);
--			}
--		}
--
--		args->offset = pc;
--		args->line = buf + prev_buf_size;
--		args->line_nr = 0;
--		args->fileloc = NULL;
--		args->ms.sym  = sym;
--		dl = disasm_line__new(args);
--		if (dl)
--			annotation_line__add(&dl->al, &notes->src->source);
--
--		pc += count;
--	} while (count > 0 && pc < len);
--
--	ret = 0;
--out:
--	free(prog_linfo);
--	btf__free(btf);
--	fclose(s);
--	bfd_close(bfdf);
--	return ret;
--}
--#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--static int symbol__disassemble_bpf(struct symbol *sym __maybe_unused,
--				   struct annotate_args *args __maybe_unused)
--{
--	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
--}
--#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
--
--static int
--symbol__disassemble_bpf_image(struct symbol *sym,
--			      struct annotate_args *args)
--{
--	struct annotation *notes = symbol__annotation(sym);
--	struct disasm_line *dl;
--
--	args->offset = -1;
--	args->line = strdup("to be implemented");
--	args->line_nr = 0;
--	args->fileloc = NULL;
--	dl = disasm_line__new(args);
--	if (dl)
--		annotation_line__add(&dl->al, &notes->src->source);
--
--	zfree(&args->line);
--	return 0;
--}
--
- #ifdef HAVE_LIBCAPSTONE_SUPPORT
- #include <capstone/capstone.h>
- 
-diff --git a/tools/perf/util/disasm_bpf.c b/tools/perf/util/disasm_bpf.c
-new file mode 100644
-index 000000000000..1fee71c79b62
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.c
-@@ -0,0 +1,195 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#include "util/annotate.h"
-+#include "util/disasm_bpf.h"
-+#include "util/symbol.h"
-+#include <linux/zalloc.h>
-+#include <string.h>
-+
-+#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+#define PACKAGE "perf"
-+#include <bfd.h>
-+#include <bpf/bpf.h>
-+#include <bpf/btf.h>
-+#include <bpf/libbpf.h>
-+#include <dis-asm.h>
-+#include <errno.h>
-+#include <linux/btf.h>
-+#include <tools/dis-asm-compat.h>
-+
-+#include "util/bpf-event.h"
-+#include "util/bpf-utils.h"
-+#include "util/debug.h"
-+#include "util/dso.h"
-+#include "util/map.h"
-+#include "util/env.h"
-+#include "util/util.h"
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct bpf_prog_linfo *prog_linfo = NULL;
-+	struct bpf_prog_info_node *info_node;
-+	int len = sym->end - sym->start;
-+	disassembler_ftype disassemble;
-+	struct map *map = args->ms.map;
-+	struct perf_bpil *info_linear;
-+	struct disassemble_info info;
-+	struct dso *dso = map__dso(map);
-+	int pc = 0, count, sub_id;
-+	struct btf *btf = NULL;
-+	char tpath[PATH_MAX];
-+	size_t buf_size;
-+	int nr_skip = 0;
-+	char *buf;
-+	bfd *bfdf;
-+	int ret;
-+	FILE *s;
-+
-+	if (dso__binary_type(dso) != DSO_BINARY_TYPE__BPF_PROG_INFO)
-+		return SYMBOL_ANNOTATE_ERRNO__BPF_INVALID_FILE;
-+
-+	pr_debug("%s: handling sym %s addr %" PRIx64 " len %" PRIx64 "\n", __func__,
-+		  sym->name, sym->start, sym->end - sym->start);
-+
-+	memset(tpath, 0, sizeof(tpath));
-+	perf_exe(tpath, sizeof(tpath));
-+
-+	bfdf = bfd_openr(tpath, NULL);
-+	if (bfdf == NULL)
-+		abort();
-+
-+	if (!bfd_check_format(bfdf, bfd_object))
-+		abort();
-+
-+	s = open_memstream(&buf, &buf_size);
-+	if (!s) {
-+		ret = errno;
-+		goto out;
-+	}
-+	init_disassemble_info_compat(&info, s,
-+				     (fprintf_ftype) fprintf,
-+				     fprintf_styled);
-+	info.arch = bfd_get_arch(bfdf);
-+	info.mach = bfd_get_mach(bfdf);
-+
-+	info_node = perf_env__find_bpf_prog_info(dso__bpf_prog(dso)->env,
-+						 dso__bpf_prog(dso)->id);
-+	if (!info_node) {
-+		ret = SYMBOL_ANNOTATE_ERRNO__BPF_MISSING_BTF;
-+		goto out;
-+	}
-+	info_linear = info_node->info_linear;
-+	sub_id = dso__bpf_prog(dso)->sub_id;
-+
-+	info.buffer = (void *)(uintptr_t)(info_linear->info.jited_prog_insns);
-+	info.buffer_length = info_linear->info.jited_prog_len;
-+
-+	if (info_linear->info.nr_line_info)
-+		prog_linfo = bpf_prog_linfo__new(&info_linear->info);
-+
-+	if (info_linear->info.btf_id) {
-+		struct btf_node *node;
-+
-+		node = perf_env__find_btf(dso__bpf_prog(dso)->env,
-+					  info_linear->info.btf_id);
-+		if (node)
-+			btf = btf__new((__u8 *)(node->data),
-+				       node->data_size);
-+	}
-+
-+	disassemble_init_for_target(&info);
-+
-+#ifdef DISASM_FOUR_ARGS_SIGNATURE
-+	disassemble = disassembler(info.arch,
-+				   bfd_big_endian(bfdf),
-+				   info.mach,
-+				   bfdf);
-+#else
-+	disassemble = disassembler(bfdf);
-+#endif
-+	if (disassemble == NULL)
-+		abort();
-+
-+	fflush(s);
-+	do {
-+		const struct bpf_line_info *linfo = NULL;
-+		struct disasm_line *dl;
-+		size_t prev_buf_size;
-+		const char *srcline;
-+		u64 addr;
-+
-+		addr = pc + ((u64 *)(uintptr_t)(info_linear->info.jited_ksyms))[sub_id];
-+		count = disassemble(pc, &info);
-+
-+		if (prog_linfo)
-+			linfo = bpf_prog_linfo__lfind_addr_func(prog_linfo,
-+								addr, sub_id,
-+								nr_skip);
-+
-+		if (linfo && btf) {
-+			srcline = btf__name_by_offset(btf, linfo->line_off);
-+			nr_skip++;
-+		} else
-+			srcline = NULL;
-+
-+		fprintf(s, "\n");
-+		prev_buf_size = buf_size;
-+		fflush(s);
-+
-+		if (!annotate_opts.hide_src_code && srcline) {
-+			args->offset = -1;
-+			args->line = strdup(srcline);
-+			args->line_nr = 0;
-+			args->fileloc = NULL;
-+			args->ms.sym  = sym;
-+			dl = disasm_line__new(args);
-+			if (dl) {
-+				annotation_line__add(&dl->al,
-+						     &notes->src->source);
-+			}
-+		}
-+
-+		args->offset = pc;
-+		args->line = buf + prev_buf_size;
-+		args->line_nr = 0;
-+		args->fileloc = NULL;
-+		args->ms.sym  = sym;
-+		dl = disasm_line__new(args);
-+		if (dl)
-+			annotation_line__add(&dl->al, &notes->src->source);
-+
-+		pc += count;
-+	} while (count > 0 && pc < len);
-+
-+	ret = 0;
-+out:
-+	free(prog_linfo);
-+	btf__free(btf);
-+	fclose(s);
-+	bfd_close(bfdf);
-+	return ret;
-+}
-+#else // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+int symbol__disassemble_bpf(struct symbol *sym __maybe_unused, struct annotate_args *args __maybe_unused)
-+{
-+	return SYMBOL_ANNOTATE_ERRNO__NO_LIBOPCODES_FOR_BPF;
-+}
-+#endif // defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)
-+
-+int symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args)
-+{
-+	struct annotation *notes = symbol__annotation(sym);
-+	struct disasm_line *dl;
-+
-+	args->offset = -1;
-+	args->line = strdup("to be implemented");
-+	args->line_nr = 0;
-+	args->fileloc = NULL;
-+	dl = disasm_line__new(args);
-+	if (dl)
-+		annotation_line__add(&dl->al, &notes->src->source);
-+
-+	zfree(&args->line);
-+	return 0;
-+}
-diff --git a/tools/perf/util/disasm_bpf.h b/tools/perf/util/disasm_bpf.h
-new file mode 100644
-index 000000000000..2ecb19545388
---- /dev/null
-+++ b/tools/perf/util/disasm_bpf.h
-@@ -0,0 +1,12 @@
-+// SPDX-License-Identifier: GPL-2.0-only
-+
-+#ifndef __PERF_DISASM_BPF_H
-+#define __PERF_DISASM_BPF_H
-+
-+struct symbol;
-+struct annotate_args;
-+
-+int symbol__disassemble_bpf(struct symbol *sym, struct annotate_args *args);
-+int symbol__disassemble_bpf_image(struct symbol *sym, struct annotate_args *args);
-+
-+#endif /* __PERF_DISASM_BPF_H */


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-11-19 10:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-05  2:04 [gentoo-commits] repo/gentoo:master commit in: dev-util/perf/files/ Georgy Yakovlev
  -- strict thread matches above, loose matches on Subject: below --
2024-11-19 10:49 Guilherme Amadio
2024-03-18 20:00 Conrad Kostecki
2021-02-18 23:06 Conrad Kostecki
2019-03-04  3:14 Aaron Bauman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox