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: <ZtcaC5WOTj-fh_Px@x1>
Date: Tue, 3 Sep 2024 11:15:39 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: "Steinar H. Gunderson" <sesse@...gle.com>
Cc: linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org,
	irogers@...gle.com, Arnaldo Carvalho de Melo <acme@...hat.com>,
	Namhyung Kim <namhyung@...nel.org>
Subject: Re: [PATCH v9 1/3] perf report: Support LLVM for addr2line()

On Tue, Sep 03, 2024 at 11:01:36AM -0300, Arnaldo Carvalho de Melo wrote:
> On Tue, Sep 03, 2024 at 07:09:47AM -0300, Arnaldo Carvalho de Melo wrote:
> >    3: almalinux:9-i386WARNING: image platform (linux/386) does not match the expected platform (linux/amd64)
> > WARNING: image platform (linux/386) does not match the expected platform (linux/amd64)
> >     17.58 almalinux:9-i386              : FAIL gcc version 11.4.1 20231218 (Red Hat 11.4.1-3) (GCC) 
> >     util/llvm-c-helpers.cpp: In function ‘char* make_symbol_relative_string(dso*, const char*, u64, u64)’:
> >     util/llvm-c-helpers.cpp:150:52: error: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘u64’ {aka ‘long long unsigned int’} [-Werror=format=]
> >       150 |                 snprintf(buf, sizeof(buf), "%s+0x%lx",
> >           |                                                  ~~^
> >           |                                                    |
> >           |                                                    long unsigned int
> >           |                                                  %llx
> >       151 |                          demangled ? demangled : sym_name, addr - base_addr);
> >           |                                                            ~~~~~~~~~~~~~~~~
> >           |                                                                 |
> >           |                                                                 u64 {aka long long unsigned int}
> >     cc1plus: all warnings being treated as errors
> >     make[3]: *** [/git/perf-6.11.0-rc3/tools/build/Makefile.build:158: util] Error 2
> 
> The one above is fixed by the patch at the end, that I already added to
> the cset where the problem was being introduced.
> 
> Now there is something a bit more tricky, we'll have to add a feature
> check to see if the libllvm has what is needed if this appears in some
> distro we still want to support, since alpine 3.16 has what is needed
> I'll take the opportunity to drop test building on alpine 3.15.

Or, as I'll do with debian:11, just remove llvm-dev and not build the
features it enables:

  17    13.79 debian:11                     : FAIL gcc version 10.2.1 20210110 (Debian 10.2.1-6) 
    util/llvm-c-helpers.cpp: In function 'char* llvm_name_for_code(dso*, const char*, u64)':
    util/llvm-c-helpers.cpp:178:21: error: 'std::remove_reference_t<llvm::DILineInfo>' {aka 'struct llvm::DILineInfo'} has no member named 'StartAddress'
      178 |   addr, res_or_err->StartAddress ? *res_or_err->StartAddress : 0);
          |                     ^~~~~~~~~~~~
    util/llvm-c-helpers.cpp:178:49: error: 'std::remove_reference_t<llvm::DILineInfo>' {aka 'struct llvm::DILineInfo'} has no member named 'StartAddress'
      178 |   addr, res_or_err->StartAddress ? *res_or_err->StartAddress : 0);
          |                                                 ^~~~~~~~~~~~
    make[3]: *** [/git/perf-6.11.0-rc3/tools/build/Makefile.build:158: util] Error 2

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ