lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aOQNXBje78z-gPpi@x1>
Date: Mon, 6 Oct 2025 15:41:32 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
	Namhyung Kim <namhyung@...nel.org>,
	Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
	Jiri Olsa <jolsa@...nel.org>,
	Adrian Hunter <adrian.hunter@...el.com>,
	Nathan Chancellor <nathan@...nel.org>,
	Nick Desaulniers <nick.desaulniers+lkml@...il.com>,
	Bill Wendling <morbo@...gle.com>,
	Justin Stitt <justinstitt@...gle.com>,
	Charlie Jenkins <charlie@...osinc.com>,
	Eric Biggers <ebiggers@...nel.org>,
	"Masami Hiramatsu (Google)" <mhiramat@...nel.org>,
	James Clark <james.clark@...aro.org>,
	Collin Funk <collin.funk1@...il.com>,
	"Dr. David Alan Gilbert" <linux@...blig.org>,
	Li Huafei <lihuafei1@...wei.com>,
	Athira Rajeev <atrajeev@...ux.ibm.com>,
	Stephen Brennan <stephen.s.brennan@...cle.com>,
	Dmitry Vyukov <dvyukov@...gle.com>,
	Alexandre Ghiti <alexghiti@...osinc.com>,
	Haibo Xu <haibo1.xu@...el.com>, Andi Kleen <ak@...ux.intel.com>,
	linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org,
	bpf@...r.kernel.org, llvm@...ts.linux.dev,
	Song Liu <song@...nel.org>
Subject: Re: [PATCH v7 00/11] Capstone/llvm improvements + dlopen support

On Mon, Oct 06, 2025 at 03:39:13PM -0300, Arnaldo Carvalho de Melo wrote:
> On Sun, Oct 05, 2025 at 02:22:01PM -0700, Ian Rogers wrote:
> > v7: Refactor now the first 5 patches, that largely moved code around,
> >     have landed. Move the dlopen code to the end of the series so that
> >     the first 8 patches can be picked improving capstone/LLVM support
 
> So I tentatively picked the first 8 patches, will test it now, hopefully
> we can go with it to have BPF annotation...
 
> Wait, will try to fix this one:
 
> ⬢ [acme@...lbx perf-tools-next]$ git log --oneline -1 ; time make -C tools/perf build-test
>                  make_static: cd . && make LDFLAGS=-static NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 NO_JVMTI=1 NO_LIBTRACEEVENT=1 NO_LIBELF=1 -j32  DESTDIR=/tmp/tmp.w26bDGykTM
> cd . && make LDFLAGS=-static NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 NO_JVMTI=1 NO_LIBTRACEEVENT=1 NO_LIBELF=1 -j32 DESTDIR=/tmp/tmp.w26bDGykTM
>   BUILD:   Doing 'make -j32' parallel build
> <SNIP>
> Auto-detecting system features:
> ...                                   libdw: [ OFF ]
> ...                                   glibc: [ on  ]
> ...                                  libelf: [ OFF ]
> ...                                 libnuma: [ OFF ]
> ...                  numa_num_possible_cpus: [ OFF ]
> ...                               libpython: [ OFF ]
> ...                             libcapstone: [ OFF ]
> ...                               llvm-perf: [ OFF ]
> ...                                    zlib: [ OFF ]
> ...                                    lzma: [ OFF ]
> ...                               get_cpuid: [ on  ]
> ...                                     bpf: [ on  ]
> ...                                  libaio: [ on  ]
> ...                                 libzstd: [ OFF ]
> <SNIP>
>  CC      tests/api-io.o
>   CC      util/sha1.o
>   CC      util/smt.o
>   LD      util/intel-pt-decoder/perf-util-in.o
>   CC      tests/demangle-java-test.o
>   CC      util/strbuf.o
>   CC      util/string.o
>   CC      tests/demangle-ocaml-test.o
>   CC      util/strlist.o
>   CC      tests/demangle-rust-v0-test.o
>   CC      tests/pfm.o
>   CC      tests/parse-metric.o
>   CC      util/strfilter.o
>   CC      tests/pe-file-parsing.o
> util/llvm.c: In function ‘init_llvm’:
> util/llvm.c:78:17: error: implicit declaration of function ‘LLVMInitializeAllTargetInfos’ [-Wimplicit-function-declaration]
>    78 |                 LLVMInitializeAllTargetInfos();
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> util/llvm.c:79:17: error: implicit declaration of function ‘LLVMInitializeAllTargetMCs’ [-Wimplicit-function-declaration]
>    79 |                 LLVMInitializeAllTargetMCs();
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> util/llvm.c:80:17: error: implicit declaration of function ‘LLVMInitializeAllDisassemblers’ [-Wimplicit-function-declaration]
>    80 |                 LLVMInitializeAllDisassemblers();
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> util/llvm.c: At top level:
> util/llvm.c:73:13: error: ‘init_llvm’ defined but not used [-Werror=unused-function]
>    73 | static void init_llvm(void)
>       |             ^~~~~~~~~
> cc1: all warnings being treated as errors
>   CC      tests/expand-cgroup.o
>   CC      util/top.o
>   CC      tests/perf-time-to-tsc.o
>   CC      util/usage.o
> make[6]: *** [/home/acme/git/perf-tools-next/tools/build/Makefile.build:86: util/llvm.o] Error 1
> make[6]: *** Waiting for unfinished jobs....
>   CC      tests/dlfilter-test.o
>   CC      tests/sigtrap.o
>   CC      tests/event_groups.o

Guess this will be enough:

diff --git a/tools/perf/util/llvm.c b/tools/perf/util/llvm.c
index 565cad1969e5e51f..2ebf1f5f65bf77c7 100644
--- a/tools/perf/util/llvm.c
+++ b/tools/perf/util/llvm.c
@@ -70,6 +70,7 @@ int llvm__addr2line(const char *dso_name __maybe_unused, u64 addr __maybe_unused
 #endif
 }
 
+#ifdef HAVE_LIBLLVM_SUPPORT
 static void init_llvm(void)
 {
 	static bool init;
@@ -90,7 +91,6 @@ static void init_llvm(void)
  * should add some textual annotation for after the instruction. The caller
  * will use this information to add the actual annotation.
  */
-#ifdef HAVE_LIBLLVM_SUPPORT
 struct symbol_lookup_storage {
 	u64 branch_addr;
 	u64 pcrel_load_addr;

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ