Re: ANNOUNCE: pahole v1.24 (Faster BTF encoding, 64-bit BTF enum entries)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em Wed, Aug 24, 2022 at 02:15:36PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Wed, Aug 24, 2022 at 09:24:49AM -0700, Nathan Chancellor escreveu:
> > Hi Arnaldo,
> > 
> > On Mon, Aug 22, 2022 at 08:28:42PM -0300, Arnaldo Carvalho de Melo wrote:
> > > Hi,
> > >   
> > > 	The v1.24 release of pahole and its friends is out, with faster
> > > BTF generation by parallelizing the encoding part in addition to the
> > > previoulsy parallelized DWARF loading, support for 64-bit BTF enumeration
> > > entries, signed BTF encoding of 'char', exclude/select DWARF loading
> > > based on the language that generated the objects, etc.
> > 
> > <snip>
> > 
> > > - Introduce --lang and --lang_exclude to specify the language the
> > >   DWARF compile units were originated from to use or filter.
> > 
> > This appears to break building pahole with older versions of libdw (?).
> > I build container images with older versions of compilers for easy
> > matrix testing and my gcc-5 and gcc-6 images (based off Ubuntu Xenial
> > and Debian Stretch respectively) fail to build.
> 
> I do it for perf, should have done it for pahole :-\
> 
> So I'll have to come up with a patch that checks if those are defined
> and if not, define it :-\ Ooops, its an enumeration :-\ I'll have to
> check how to fix this, thanks for the report!
> 
> Will rebuild it with the containers I have to see if there are other
> cases.

Yeah, recent enough distros are all building ok, I'll try and add some
fallback for old distros.

[perfbuilder@five ~]$ export BUILD_TARBALL=http://192.168.86.14/pahole/dwarves-1.24.tar.xz
[perfbuilder@five ~]$ export BUILD_CMD=buildcmd.sh
[perfbuilder@five ~]$ time dm
   1     3.86 almalinux:8                   : Ok   gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4) , clang version 12.0.1 (Red Hat 12.0.1-4.module_el8.5.0+1025+93159d6c)
   2     3.97 almalinux:9                   : Ok   gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9) , clang version 13.0.1 (Red Hat 13.0.1-1.el9)
   3     1.06 alpine:3.9                    : FAIL gcc version 8.3.0 (Alpine 8.3.0)
   4     0.96 alpine:3.10                   : FAIL gcc version 8.3.0 (Alpine 8.3.0)
   5     0.86 alpine:3.11                   : FAIL gcc version 9.3.0 (Alpine 9.3.0)
   6     4.77 alpine:3.12                   : Ok   gcc (Alpine 9.3.0) 9.3.0 , Alpine clang version 10.0.0 (https://gitlab.alpinelinux.org/alpine/aports.git 7445adce501f8473efdb93b17b5eaf2f1445ed4c)
   7     5.47 alpine:3.13                   : Ok   gcc (Alpine 10.2.1_pre1) 10.2.1 20201203 , Alpine clang version 10.0.1
   8     5.57 alpine:3.14                   : Ok   gcc (Alpine 10.3.1_git20210424) 10.3.1 20210424 , Alpine clang version 11.1.0
   9     5.37 alpine:3.15                   : Ok   gcc (Alpine 10.3.1_git20211027) 10.3.1 20211027 , Alpine clang version 12.0.1
  10     5.67 alpine:3.16                   : Ok   gcc (Alpine 11.2.1_git20220219) 11.2.1 20220219 , Alpine clang version 13.0.1
  11     5.67 alpine:edge                   : Ok   gcc (Alpine 11.2.1_git20220219) 11.2.1 20220219 , Alpine clang version 14.0.6
  12     2.96 alt:p8                        : FAIL gcc version 5.3.1 20151207 (ALT p8 5.3.1-alt3.M80P.1) (GCC)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
    /git/dwarves-1.24/dwarves.c:2093:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2093:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2100:3: error: 'DW_LANG_C_plus_plus_03' undeclared (first use in this function)
      [DW_LANG_C_plus_plus_03] = "c++03",
       ^
    /git/dwarves-1.24/dwarves.c:2100:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2100:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2105:3: error: 'DW_LANG_Dylan' undeclared (first use in this function)
      [DW_LANG_Dylan]   = "dylan",
       ^
    /git/dwarves-1.24/dwarves.c:2105:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2105:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2114:3: error: 'DW_LANG_Julia' undeclared (first use in this function)
      [DW_LANG_Julia]   = "julia",
       ^
    /git/dwarves-1.24/dwarves.c:2114:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2114:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2116:3: error: 'DW_LANG_Modula3' undeclared (first use in this function)
      [DW_LANG_Modula3]  = "modula3",
       ^
    /git/dwarves-1.24/dwarves.c:2116:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2116:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2119:3: error: 'DW_LANG_OCaml' undeclared (first use in this function)
      [DW_LANG_OCaml]   = "ocaml",
       ^
    /git/dwarves-1.24/dwarves.c:2119:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2119:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2120:3: error: 'DW_LANG_OpenCL' undeclared (first use in this function)
      [DW_LANG_OpenCL]  = "opencl",
       ^
    /git/dwarves-1.24/dwarves.c:2120:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2120:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2124:3: error: 'DW_LANG_RenderScript' undeclared (first use in this function)
      [DW_LANG_RenderScript]  = "renderscript",
       ^
    /git/dwarves-1.24/dwarves.c:2124:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2124:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2125:3: error: 'DW_LANG_Rust' undeclared (first use in this function)
      [DW_LANG_Rust]   = "rust",
       ^
    /git/dwarves-1.24/dwarves.c:2125:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2125:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2126:3: error: 'DW_LANG_Swift' undeclared (first use in this function)
      [DW_LANG_Swift]   = "swift",
       ^
    /git/dwarves-1.24/dwarves.c:2126:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2126:3: note: (near initialization for 'languages')
    make[2]: *** [CMakeFiles/dwarves.dir/dwarves.c.o] Error 1
  13     4.07 alt:p9                        : Ok   x86_64-alt-linux-gcc (GCC) 8.4.1 20200305 (ALT p9 8.4.1-alt0.p9.1) , clang version 10.0.0
  14     4.17 alt:p10                       : Ok   x86_64-alt-linux-gcc (GCC) 10.3.1 20210703 (ALT Sisyphus 10.3.1-alt2) , clang version 11.0.1
  15     4.17 alt:sisyphus                  : Ok   x86_64-alt-linux-gcc (GCC) 12.1.1 20220518 (ALT Sisyphus 12.1.1-alt1) , ALT Linux Team clang version 13.0.1
  16     3.57 amazonlinux:2                 : Ok   gcc (GCC) 7.3.1 20180712 (Red Hat 7.3.1-15) , clang version 11.1.0 (Amazon Linux 2 11.1.0-1.amzn2.0.2)
  17     4.27 amazonlinux:devel             : Ok   gcc (GCC) 11.3.1 20220421 (Red Hat 11.3.1-2) , clang version 12.0.1 (Fedora 12.0.1-1.amzn2022)
  18     4.87 archlinux:base                : Ok   gcc (GCC) 12.1.1 20220730 , clang version 14.0.6
  19     3.77 centos:8                      : Ok   gcc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1) , clang version 11.0.1 (Red Hat 11.0.1-1.module_el8.4.0+966+2995ef20)
  20     4.07 centos:stream                 : Ok   gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-15) , clang version 14.0.0 (Red Hat 14.0.0-1.module_el8.7.0+1142+5343df54)
  21     4.87 clearlinux:latest             : Ok   gcc (Clear Linux OS for Intel Architecture) 12.1.1 20220811 releases/gcc-12.1.0-341-g28a7b5df3b
  22     3.36 debian:9                      : FAIL gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
    /git/dwarves-1.24/dwarves.c:2093:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2093:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2100:3: error: 'DW_LANG_C_plus_plus_03' undeclared (first use in this function)
      [DW_LANG_C_plus_plus_03] = "c++03",
       ^~~~~~~~~~~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2100:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2100:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2105:3: error: 'DW_LANG_Dylan' undeclared (first use in this function)
      [DW_LANG_Dylan]   = "dylan",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2105:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2105:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2114:3: error: 'DW_LANG_Julia' undeclared (first use in this function)
      [DW_LANG_Julia]   = "julia",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2114:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2114:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2116:3: error: 'DW_LANG_Modula3' undeclared (first use in this function)
      [DW_LANG_Modula3]  = "modula3",
       ^~~~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2116:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2116:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2119:3: error: 'DW_LANG_OCaml' undeclared (first use in this function)
      [DW_LANG_OCaml]   = "ocaml",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2119:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2119:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2120:3: error: 'DW_LANG_OpenCL' undeclared (first use in this function)
      [DW_LANG_OpenCL]  = "opencl",
       ^~~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2120:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2120:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2124:3: error: 'DW_LANG_RenderScript' undeclared (first use in this function)
      [DW_LANG_RenderScript]  = "renderscript",
       ^~~~~~~~~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2124:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2124:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2125:3: error: 'DW_LANG_Rust' undeclared (first use in this function)
      [DW_LANG_Rust]   = "rust",
       ^~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2125:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2125:3: note: (near initialization for 'languages')
    /git/dwarves-1.24/dwarves.c:2126:3: error: 'DW_LANG_Swift' undeclared (first use in this function)
      [DW_LANG_Swift]   = "swift",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2126:3: error: array index in initializer not of integer type
    /git/dwarves-1.24/dwarves.c:2126:3: note: (near initialization for 'languages')
    CMakeFiles/dwarves.dir/build.make:62: recipe for target 'CMakeFiles/dwarves.dir/dwarves.c.o' failed
    make[2]: *** [CMakeFiles/dwarves.dir/dwarves.c.o] Error 1
  23     4.08 debian:10                     : Ok   gcc (Debian 8.3.0-6) 8.3.0 , Debian clang version 11.0.1-2~deb10u1
  24     3.97 debian:11                     : Ok   gcc (Debian 10.2.1-6) 10.2.1 20210110 , Debian clang version 11.0.1-2
  25     4.77 debian:experimental           : Ok   gcc (Debian 12.1.0-7) 12.1.0 , Debian clang version 14.0.6-2
  26     3.06 fedora:22                     : FAIL gcc version 5.3.1 20160406 (Red Hat 5.3.1-6) (GCC)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  27     3.06 fedora:24                     : FAIL gcc version 6.3.1 20161221 (Red Hat 6.3.1-1) (GCC)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  28     3.17 fedora:25                     : FAIL gcc version 6.4.1 20170727 (Red Hat 6.4.1-1) (GCC)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
  29     3.87 fedora:26                     : Ok   gcc (GCC) 7.3.1 20180130 (Red Hat 7.3.1-2)
  30     3.57 fedora:27                     : Ok   gcc (GCC) 7.3.1 20180712 (Red Hat 7.3.1-6)
  31     3.87 fedora:28                     : Ok   gcc (GCC) 8.3.1 20190223 (Red Hat 8.3.1-2)
  32     3.97 fedora:29                     : Ok   gcc (GCC) 8.3.1 20190223 (Red Hat 8.3.1-2)
  33     3.77 fedora:30                     : Ok   gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2)
  34     3.97 fedora:31                     : Ok   gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) , clang version 9.0.1 (Fedora 9.0.1-4.fc31)
  35     4.07 fedora:32                     : Ok   gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1) , clang version 10.0.1 (Fedora 10.0.1-3.fc32)
  36     3.97 fedora:33                     : Ok   gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1) , clang version 11.0.0 (Fedora 11.0.0-3.fc33)
  37     4.17 fedora:34                     : Ok   gcc (GCC) 11.3.1 20220421 (Red Hat 11.3.1-2) , clang version 12.0.1 (Fedora 12.0.1-1.fc34)
  38     3.97 fedora:35                     : Ok   gcc (GCC) 11.3.1 20220421 (Red Hat 11.3.1-2) , clang version 13.0.0 (Fedora 13.0.0-3.fc35)
  39     4.27 fedora:36                     : Ok   gcc (GCC) 12.1.1 20220507 (Red Hat 12.1.1-1) , clang version 14.0.0 (Fedora 14.0.0-1.fc36)
  40     4.57 fedora:37                     : Ok   gcc (GCC) 12.1.1 20220628 (Red Hat 12.1.1-3) , clang version 14.0.5 (Fedora 14.0.5-6.fc37)
  41     4.67 fedora:38                     : Ok   gcc (GCC) 12.1.1 20220810 (Red Hat 12.1.1-4) , clang version 14.0.5 (Fedora 14.0.5-6.fc38)
  42     4.56 fedora:rawhide                : Ok   gcc (GCC) 12.1.1 20220810 (Red Hat 12.1.1-4) , clang version 14.0.5 (Fedora 14.0.5-6.fc38)
  43     4.17 gentoo-stage3:latest          : Ok   gcc (Gentoo 11.2.0 p1) 11.2.0 , clang version 13.0.0
  44     4.47 manjaro:base                  : Ok   gcc (GCC) 11.1.0 , clang version 13.0.0
  45     3.26 opensuse:15.0                 : FAIL gcc version 7.4.1 20190905 [gcc-7-branch revision 275407] (SUSE Linux)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function); did you mean 'DW_LANG_PLI'?
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
       DW_LANG_PLI
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  46     3.17 opensuse:15.1                 : FAIL gcc version 7.5.0 (SUSE Linux)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function); did you mean 'DW_LANG_PLI'?
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
       DW_LANG_PLI
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  47     3.16 opensuse:15.2                 : FAIL gcc version 7.5.0 (SUSE Linux)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function); did you mean 'DW_LANG_PLI'?
      [DW_LANG_BLISS]   = "bliss",
       ^~~~~~~~~~~~~
       DW_LANG_PLI
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  48     3.77 opensuse:15.3                 : Ok   gcc (SUSE Linux) 7.5.0 , clang version 11.0.1
  49     3.96 opensuse:15.4                 : Ok   gcc (SUSE Linux) 7.5.0 , clang version 13.0.1
  50     4.57 opensuse:tumbleweed           : Ok   gcc (SUSE Linux) 12.1.1 20220629 [revision 7811663964aa7e31c3939b859bbfa2e16919639f] , clang version 14.0.6
  51     3.87 oraclelinux:8                 : Ok   gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4.0.1) , clang version 12.0.1 (Red Hat 12.0.1-4.0.1.module+el8.5.0+20428+2b4ecd47)
  52     3.97 oraclelinux:9                 : Ok   gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9.4.0.2) , clang version 13.0.1 (Red Hat 13.0.1-1.0.1.el9)
  53     3.97 rockylinux:8                  : Ok   gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-10) , clang version 13.0.1 (Red Hat 13.0.1-2.module+el8.6.0+987+d36ea6a1)
  54     4.17 rockylinux:9                  : Ok   gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9) , clang version 13.0.1 (Red Hat 13.0.1-1.el9)
  55     3.06 ubuntu:16.04                  : FAIL gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)
    /git/dwarves-1.24/dwarves.c: In function 'lang__str2int':
    /git/dwarves-1.24/dwarves.c:2093:3: error: 'DW_LANG_BLISS' undeclared (first use in this function)
      [DW_LANG_BLISS]   = "bliss",
       ^
    /git/dwarves-1.24/dwarves.c:2093:3: note: each undeclared identifier is reported only once for each function it appears in
  56     3.77 ubuntu:18.04                  : Ok   gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
  57     4.27 ubuntu:20.04                  : Ok   gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
  58     4.17 ubuntu:21.04                  : Ok   gcc (Ubuntu 10.3.0-1ubuntu1) 10.3.0 , Ubuntu clang version 12.0.0-3ubuntu1~21.04.2
  59     4.07 ubuntu:21.10                  : Ok   gcc (Ubuntu 11.2.0-7ubuntu2) 11.2.0 , Ubuntu clang version 13.0.0-2
  60     4.17 ubuntu:22.04                  : Ok   gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0 , Ubuntu clang version 14.0.0-1ubuntu1
  61     4.37 ubuntu:22.10                  : Ok   gcc (Ubuntu 11.3.0-5ubuntu1) 11.3.0 , Ubuntu clang version 14.0.6-2




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux