From: Alan Maguire <alan.maguire@oracle.com>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>,
Clark Williams <williams@redhat.com>,
dwarves@vger.kernel.org,
Arnaldo Carvalho de Melo <acme@redhat.com>,
bpf@vger.kernel.org, Yonghong Song <yonghong.song@linux.dev>,
Andrii Nakryiko <andrii@kernel.org>
Subject: Re: RFT: coverage analysis and lots more regression tests in the 'next' branch. Was: Re: [PATCH v2 0/9] pahole: Support cross-CU type references and dwz alternate debug files
Date: Sun, 30 Aug 2026 18:08:49 +0100 [thread overview]
Message-ID: <5e3b9e48-00f5-43d1-a383-2b1c59342e87@oracle.com> (raw)
In-Reply-To: <apM_W9ld8Bj3q5Vk@x2>
On 29/08/2026 21:21, Arnaldo Carvalho de Melo wrote:
> On Fri, Aug 28, 2026 at 07:59:24PM -0300, Arnaldo Carvalho de Melo wrote:
>> I'm now in the process of cherry picking non-Rust related patches,
>> things that don't touch the .c files in the tree, just adding coverage
>> analysis, tons of tests and scripts for helping us do bisection tests,
>> etc.
>
>> I just pushed out the first batch to the next branch, I invite people to
>> try it and report results, it should help us to catch problems sooner by
>> testing most of the paths in the codebase, which is super important
>> these days where we are having (or will have) tons of patches being
>> submitted.
>
> Got all of the coverage analysis and new regression tests on the next
> branch, and run the 'build-and-test.sh' script on my set of containers,
> where all the test ran on:
This looks fantastic! I ran it thru CI:
https://github.com/alan-maguire/dwarves/actions/runs/33255515875
Let's get the coverage report enabled as part of CI too..
>
> toolsbuilder@five:~$ cat dm.log/summary
> Subject: tools build test for http://192.168.86.5/pahole/dwarves-1.31.tar.xz build-and-test-cmd.sh
>
> 1 78.93 almalinux:8 : Ok gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28) , clang version 21.1.8 ( 21.1.8-1.module_el8.10.0+4172+b6b13d75) flex 2.6.1
> 2 158.15 almalinux:9 : Ok gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-14) , clang version 21.1.8 (AlmaLinux OS Foundation 21.1.8-2.el9) flex 2.6.4
> 3 36.95 almalinux:9-i386 : Ok gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-14) , clang version 21.1.8 (AlmaLinux OS Foundation 21.1.8-2.el9) flex 2.6.4
> 4 167.45 almalinux:10 : Ok gcc (GCC) 14.3.1 20251022 (Red Hat 14.3.1-4) , clang version 21.1.8 (AlmaLinux OS Foundation 21.1.8-1.el10.alma.1) flex 2.6.4
> 5 293.08 alpine:3.22 : Ok gcc (Alpine 14.2.0) 14.2.0 , Alpine clang version 20.1.8 flex 2.6.4
> 6 289.06 alpine:3.23 : Ok gcc (Alpine 15.2.0) 15.2.0 , Alpine clang version 21.1.2 flex 2.6.4
> 7 255.51 alpine:3.24 : Ok gcc (Alpine 15.2.0) 15.2.0 , Alpine clang version 22.1.3 flex 2.6.4
> 8 262.55 alpine:edge : Ok gcc (Alpine 15.2.0) 15.2.0 , Alpine clang version 22.1.8 flex 2.6.4
> 9 152.16 amazonlinux:2023 : Ok gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-5) , clang version 15.0.7 (AWS 15.0.7-3.amzn2023.0.4) flex 2.6.4
> 10 152.38 amazonlinux:devel : Ok gcc (GCC) 11.3.1 20221121 (Red Hat 11.3.1-4) , clang version 15.0.6 (Amazon Linux 15.0.6-3.amzn2023.0.2) flex 2.6.4
> 11 171.22 archlinux:base : Ok gcc (GCC) 16.2.1 20260810 , clang version 22.1.8 flex 2.6.4
> 12 160.21 centos:stream : Ok gcc (GCC) 14.4.1 20260724 (Red Hat 14.4.1-2) , clang version 22.1.8 (CentOS 22.1.8-1.el10) flex 2.6.4
> 13 77.34 debian:11 : Ok gcc (Debian 10.2.1-6) 10.2.1 20210110 , Debian clang version 13.0.1-6~deb11u1 flex 2.6.4
> 14 154.23 debian:12 : Ok gcc (Debian 12.2.0-14+deb12u1) 12.2.0 , Debian clang version 14.0.6 flex 2.6.4
> 15 157.32 debian:13 : Ok gcc (Debian 14.2.0-19) 14.2.0 , Debian clang version 19.1.7 (3+b1) flex 2.6.4
> 16 156.96 debian:experimental : Ok gcc (Debian 16.1.0-3) 16.1.0 , Debian clang version 21.1.8 (10) flex 2.6.4
> 17 157.12 fedora:40 : Ok gcc (GCC) 14.2.1 20240912 (Red Hat 14.2.1-3) , clang version 18.1.8 (Fedora 18.1.8-2.fc40) flex 2.6.4
> 18 158.62 fedora:41 : Ok gcc (GCC) 14.3.1 20251022 (Red Hat 14.3.1-4) , clang version 19.1.7 (Fedora 19.1.7-5.fc41) flex 2.6.4
> 19 161.74 fedora:42 : Ok gcc (GCC) 15.2.1 20260123 (Red Hat 15.2.1-7) , clang version 20.1.8 (Fedora 20.1.8-4.fc42) flex 2.6.4
> 20 160.37 fedora:43 : Ok gcc (GCC) 15.3.1 20260722 (Red Hat 15.3.1-1) , clang version 21.1.8 (Fedora 21.1.8-6.fc43) flex 2.6.4
> 21 239.67 fedora:44 : Ok gcc (GCC) 16.2.1 20260819 (Red Hat 16.2.1-2) , clang version 22.1.8 (Fedora 22.1.8-4.fc44) flex 2.6.4
> 22 238.08 fedora:45 : Ok gcc (GCC) 16.2.1 20260819 (Red Hat 16.2.1-2) , clang version 22.1.8 (Fedora 22.1.8-20.fc45) flex 2.6.4
> 23 170.21 fedora:rawhide : Ok gcc (GCC) 16.1.1 20260703 (Red Hat 16.1.1-4) , clang version 22.1.8 (Fedora 22.1.8-20.fc45) flex 2.6.4
> 24 89.22 gentoo:stage3 : Ok gcc (Gentoo 15.3.0 p8) 15.3.0 flex 2.6.4
> 25 166.60 manjaro:base : Ok gcc (GCC) 16.1.1 20260625 , clang version 22.1.6 flex 2.6.4
> 26 172.84 opensuse:16.0 : Ok gcc (SUSE Linux) 15.3.0 , clang version 19.1.7 flex 2.6.4
> 27 166.50 opensuse:tumbleweed : Ok gcc (SUSE Linux) 15.3.0 , clang version 22.1.8 flex 2.6.4
> 28 80.73 oraclelinux:8 : Ok gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28.0.1) , clang version 21.1.8 ( 21.1.8-1.module+el8.10.0+90887+a5269809) flex 2.6.1
> 29 162.06 oraclelinux:9 : Ok gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-14.0.1) , clang version 21.1.8 ( 21.1.8-2.el9) flex 2.6.4
> 30 164.88 oraclelinux:10 : Ok gcc (GCC) 14.3.1 20251022 (Red Hat 14.3.1-4.0.1) , clang version 21.1.8 (Oracle America 21.1.8-1.el10) flex 2.6.4
> 31 82.10 rockylinux:8 : Ok gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-28) , clang version 21.1.8 (RESF 21.1.8-1.module+el8.10.0+40180+8e26bdb3) flex 2.6.1
> 32 162.01 rockylinux:9 : Ok gcc (GCC) 11.5.0 20240719 (Red Hat 11.5.0-14) , clang version 21.1.8 (RESF 21.1.8-2.el9) flex 2.6.4
> 33 166.23 rockylinux:10 : Ok gcc (GCC) 14.3.1 20251022 (Red Hat 14.3.1-4) , clang version 21.1.8 (RESF 21.1.8-1.el10) flex 2.6.4
> 34 169.75 ubuntu:22.04 : Ok gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0 , Ubuntu clang version 14.0.0-1ubuntu1.1 flex 2.6.4
> 35 162.24 ubuntu:24.04 : Ok gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0 , Ubuntu clang version 18.1.3 (1ubuntu1) flex 2.6.4
> 36 162.16 ubuntu:25.04 : Ok gcc (Ubuntu 14.2.0-19ubuntu2) 14.2.0 , Ubuntu clang version 20.1.2 (0ubuntu1) flex 2.6.4
> 37 161.96 ubuntu:25.10 : Ok gcc (Ubuntu 15.2.0-4ubuntu4) 15.2.0 , Ubuntu clang version 20.1.8 (0ubuntu4) flex 2.6.4
> 38 163.52 ubuntu:26.04 : Ok gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0 , Ubuntu clang version 21.1.8 (6ubuntu1) flex 2.6.4
> BUILD_TARBALL_HEAD=eeb6956261d2fbe71715f0633a68fdc840b5f5ce
> 39 6242.1
> toolsbuilder@five:~$
>
> For instance:
>
> toolsbuilder@five:~$ cat dm.log/fedora\:rawhide
> fedora:rawhide
> Downloading http://192.168.86.5/pahole/dwarves-1.31.tar.xz...
> % Total % Received % Xferd Average Speed Time Time Time Current
> Dload Upload Total Spent Left Speed
> 100 2.34M 100 2.34M 0 0 530.8M 0 0
> dwarves-1.31/config.h.cmake
> dwarves-1.31/btfdiff
> <SNIP>
> dwarves-1.31/tests/typedef_chain.sh
> dwarves-1.31/tests/.test-times.seed
> dwarves-1.31/HEAD
> BUILD_TARBALL_HEAD=eeb6956261d2fbe71715f0633a68fdc840b5f5ce
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/16/lto-wrapper
> OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
> OFFLOAD_TARGET_DEFAULT=1
> Target: x86_64-redhat-linux
> Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,m2,cobol,algol68,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugzilla.redhat.com/ --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-libstdcxx-zoneinfo=/usr/share/zoneinfo --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-16.1.1-build/gcc-16.1.1-20260703/obj-x86_64-redhat-linux/isl-install --enable-offload-targets=nvptx-none,amdgcn-amdhsa --enable-offload-defaulted --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-tls=gnu2 --with-arch_32=i686 --build=x86_64-redhat-linux --with-build-config=bootstrap-lto --enable-link-serialization=1 --disable-libssp
> Thread model: posix
> Supported LTO compression algorithms: zlib zstd
> gcc version 16.1.1 20260703 (Red Hat 16.1.1-4) (GCC)
> -- The C compiler identification is GNU 16.1.1
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working C compiler: /usr/bin/cc - skipped
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Setting BUILD_SHARED_LIBS = ON
> -- Checking availability of DWARF and ELF development libraries
> -- Looking for dwfl_module_build_id in elf
> -- Looking for dwfl_module_build_id in elf - found
> -- Found dwarf.h header: /usr/include
> -- Found elfutils/libdw.h header: /usr/include
> -- Found libdw library: /usr/lib64/libdw.so
> -- Found libelf library: /usr/lib64/libelf.so
> -- Checking availability of DWARF and ELF development libraries - done
> -- Found ZLIB: /usr/lib64/libz.so (found version "1.3.1")
> -- Checking availability of argp library
> -- Assuming argp is in libc
> -- Checking availability of argp library - done
> -- Checking availability of obstack library
> -- Assuming obstack is in libc
> -- Checking availability of obstack library - done
> -- Version: v1.31-tarball-g416753b4ba90 (from HEAD file)
> -- Performing Test HAVE_REALLOCARRAY_SUPPORT
> -- Performing Test HAVE_REALLOCARRAY_SUPPORT - Success
> -- Configuring done (0.6s)
> -- Generating done (0.0s)
> -- Build files have been written to: /git/dwarves-1.31/build
> make: Entering directory '/git/dwarves-1.31/build'
> [ 1%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/btf.c.o
> [ 3%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/features.c.o
> [ 5%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/bpf.c.o
> [ 8%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/btf_relocate.c.o
> [ 8%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/btf_dump.c.o
> [ 10%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/hashmap.c.o
> [ 13%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/bpf_prog_linfo.c.o
> [ 13%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/libbpf.c.o
> [ 15%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/libbpf_probes.c.o
> [ 18%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/libbpf_utils.c.o
> [ 20%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/linker.c.o
> [ 20%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/btf_iter.c.o
> [ 22%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/elf.c.o
> [ 24%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/gen_loader.c.o
> [ 25%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/netlink.c.o
> [ 27%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/nlattr.c.o
> [ 29%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/ringbuf.c.o
> [ 31%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/relo_core.c.o
> [ 32%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/usdt.c.o
> [ 36%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/strset.c.o
> [ 36%] Building C object CMakeFiles/bpf.dir/lib/bpf/src/zip.c.o
> [ 36%] Built target bpf
> [ 39%] Building C object CMakeFiles/dwarves.dir/dwarves.c.o
> [ 39%] Building C object CMakeFiles/dwarves.dir/dwarves_fprintf.c.o
> [ 43%] Building C object CMakeFiles/dwarves.dir/rbtree.c.o
> [ 43%] Building C object CMakeFiles/dwarves.dir/libctf.c.o
> [ 46%] Building C object CMakeFiles/dwarves.dir/ctf_loader.c.o
> [ 48%] Building C object CMakeFiles/dwarves.dir/gobuffer.c.o
> [ 51%] Building C object CMakeFiles/dwarves.dir/btf_loader.c.o
> [ 51%] Building C object CMakeFiles/dwarves.dir/elf_symtab.c.o
> [ 48%] Building C object CMakeFiles/dwarves.dir/btf_encoder.c.o
> [ 53%] Building C object CMakeFiles/dwarves.dir/dwarf_loader.c.o
> [ 55%] Building C object CMakeFiles/dwarves.dir/dutil.c.o
> [ 56%] Linking C shared library libdwarves.so
> [ 56%] Built target dwarves
> [ 60%] Building C object CMakeFiles/syscse.dir/syscse.c.o
> [ 62%] Building C object CMakeFiles/dtagnames.dir/dtagnames.c.o
> [ 65%] Building C object CMakeFiles/prefcnt.dir/prefcnt.c.o
> [ 65%] Building C object CMakeFiles/dwarves_emit.dir/dwarves_emit.c.o
> [ 72%] Building C object CMakeFiles/scncopy.dir/scncopy.c.o
> [ 68%] Building C object CMakeFiles/pglobal.dir/pglobal.c.o
> [ 62%] Building C object CMakeFiles/pdwtags.dir/pdwtags.c.o
> [ 72%] Building C object CMakeFiles/dwarves_reorganize.dir/dwarves_reorganize.c.o
> [ 68%] Building C object CMakeFiles/codiff.dir/codiff.c.o
> [ 74%] Building C object CMakeFiles/scncopy.dir/elfcreator.c.o
> [ 75%] Linking C executable dtagnames
> [ 79%] Linking C executable pdwtags
> [ 81%] Linking C executable syscse
> [ 81%] Linking C executable prefcnt
> [ 82%] Linking C executable pglobal
> [ 84%] Linking C executable scncopy
> [ 86%] Linking C shared library libdwarves_reorganize.so
> [ 86%] Built target dtagnames
> [ 86%] Built target pdwtags
> [ 86%] Built target pglobal
> [ 86%] Built target prefcnt
> [ 86%] Built target syscse
> [ 87%] Linking C shared library libdwarves_emit.so
> [ 87%] Built target scncopy
> [ 87%] Built target dwarves_reorganize
> [ 87%] Built target dwarves_emit
> [ 89%] Linking C executable codiff
> [ 91%] Building C object CMakeFiles/pahole.dir/pahole.c.o
> [ 93%] Building C object CMakeFiles/ctracer.dir/ctracer.c.o
> [ 94%] Building C object CMakeFiles/pfunct.dir/pfunct.c.o
> [ 94%] Built target codiff
> [ 98%] Linking C executable ctracer
> [ 98%] Linking C executable pfunct
> [ 98%] Built target pfunct
> [ 98%] Built target ctracer
> [100%] Linking C executable pahole
> [100%] Built target pahole
> make: Leaving directory '/git/dwarves-1.31/build'
> Testing pahole version:
> v1.31-tarball-g416753b4ba90
>
> Verbose mode enabled - showing diagnostic information:
> Architecture: x86_64
> CPUs: 32
> Memory: 62.7 GB
> Swap: 8.0 GB
> Parallelism: unlimited (all tests run in parallel)
> Tip: On low-memory systems, use -j to limit parallelism (e.g., -j 4 or -j 1)
> Test artifacts: /tmp/pahole-tests/
> Compiler: gcc (GCC) 16.1.1 20260703 (Red Hat 16.1.1-4)
> libc: ldd (GNU libc) 2.44
> bpftool: bpftool v7.7.0
> VMLINUX: /tmp/vmlinux
> PERF_BIN: not set
> PERF_SRC_DIR: not set
>
> 1: dwarves_emit.c: _Atomic type compile emission. : Ok
> 2: _Atomic type display and --skip_emitting_atomic_typedefs. : Ok
> 3: Auxiliary tools: pglobal, prefcnt, dtagnames. : Ok
> 4: Bitfield layout and data member filtering. : Ok
> 5: dwarf_loader coverage: bitfields, templates, enums, inlines. : Ok
> 6: Bitfield typedef recoding (tag__recode_dwarf_bitfield). : Ok
> 7: BTF arena type tag encoding for kfuncs. : Ok
> 8: BTF multi-dimensional array encoding and round-trip. : Ok
> 9: BTF bitfield encoding and loading round-trip. : Ok
> 10: BTF VAR and DATASEC encoding for global variables. : Ok
> 11: BTF deduplication of array types across CUs. : Ok
> 12: Distilled base BTF generation. : Ok
> 13: BTF encoding options. : Ok
> 14: BTF encoder coverage. : Ok
> 15: Validation of BTF encoding of functions. : Ok
> 16: BTF_KIND_FWD encoding and loading round-trip. : Ok
> 17: BTF encoding with invalid symbol names. : Ok
> 18: Split BTF encoding (vmlinux base + kernel module). : Skip (no loaded module with debuginfod-available debuginfo found)
> 19: Check BTF type tag order. : Ok
> 20: BTF FLOAT and ENUM64 type encoding. : Ok
> 21: BTF encoder verbose logging coverage. : Ok
> 23: BTF encoding into ELF via pahole -J (btf_encoder__write_elf). : Ok
> 24: BTF true_signature: clang optimized aggregate parameters (2 structs: Ok
> 25: BTF true_signature: clang optimized aggregate parameters (2 structs: Ok
> 26: BTF true_signature: clang optimized with large union parameter : Ok
> 27: BTF true_signature: clang optimized parameters (scalar) : Ok
> 28: BTF true_signature: clang optimized with stack parameters (9 params: Ok
> 29: BTF true_signature: clang optimized with stack parameters (non-stat: Ok
> 30: Class name list from file. : Ok
> 31: CLI display and filtering options. : Ok
> 32: codiff struct comparison. : Ok
> 33: codiff coverage: terse, functions, verbose, multi-CU. : Ok
> 34: codiff member change coverage. : Ok
> 35: codiff multi-CU: __cus__find_cu_by_name coverage. : Ok
> 36: Compilable output and type filtering. : Ok
> 37: Type containment and pointer search. : Ok
> 38: C++ namespace and using-declaration display. : Ok
> 39: C++ variadic template parameter pack handling. : Ok
> 40: Class name filtering. : Ok
> 41: Default BTF on a system without BTF. : Ok
> 42: Display format options. : Ok
> 43: dwarf_loader.c edge cases: bitfield recode, inlining, call sites. : Ok
> 44: dwarves.c core API coverage. : Ok
> 45: DWZ alternate debug file type resolution. : Ok
> 46: Atomic typedef emission. : Ok
> 47: Legacy atomic_ base type emission via --compile (hand-crafted DWARF: Ok
> 48: dwarves_emit.c / dwarves_reorganize.c coverage. : Ok
> 49: Enumerator search. : Ok
> 50: Expand pointers option. : Ok
> 51: Type expansion and anonymous struct options. : Ok
> 52: Flexible arrays accounting. : Ok
> 53: Validation of GCC optimized parameters in default BTF. : Ok
> 54: Validation of BTF encoding of true_signatures. : Skip (no optimizations applied.)
> 56: Multi-file loading (cus__load_files). : Ok
> 57: Version output. : Ok
> 58: Header, range and seek_bytes prettify paths. : Ok
> 59: pahole.c scattered option paths. : Ok
> 60: pdwtags DWARF tag display. : Ok
> 61: Check that pfunct can print btf_decl_tags read from BTF. : Ok
> 62: pfunct coverage: symtab, class, expand_types, compile. : Ok
> 63: pfunct function statistics. : Ok
> 64: pglobal basic: variables, functions, static exclusion. : Ok
> 65: prefcnt.c: reference counting coverage. : Ok
> 68: Cacheline boundary display with large structs. : Ok
> 70: Sizes and holes display. : Ok
> 71: Small files coverage: elf_symtab, gobuffer, dutil, pglobal. : Ok
> 72: Sort output and separator. : Ok
> 73: Typedef chain display. : Ok
> 55: Compare parallel vs merged CU loading for inter-CU type references.: Ok
> 66: Pretty printing of files using DWARF type information. : Ok
> 67: Prototype expression parsing and prettify. : Ok
> 69: Parallel reproducible DWARF Loading/Serial BTF encoding. : Ok
> 22: BTF encoding on vmlinux. : Ok
> Saved timing data to .test-times (73 tests)
>
> + '[' ']'
> + set +o xtrace
> clang version 22.1.8 (Fedora 22.1.8-20.fc45)
> Target: x86_64-redhat-linux-gnu
> Thread model: posix
> InstalledDir: /usr/bin
> Configuration file: /etc/clang/x86_64-redhat-linux-gnu-clang.cfg
> System configuration file directory: /etc/clang/
> Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-redhat-linux/16
> Selected GCC installation: /usr/bin/../lib/gcc/x86_64-redhat-linux/16
> Candidate multilib: .;@m64
> Candidate multilib: 32;@m32
> Selected multilib: .;@m64
> mkdir: cannot create directory 'build': File exists
> -- Setting BUILD_SHARED_LIBS = ON
> -- Checking availability of DWARF and ELF development libraries
> -- Checking availability of DWARF and ELF development libraries - done
> -- Checking availability of argp library
> -- Assuming argp is in libc
> -- Checking availability of argp library - done
> -- Checking availability of obstack library
> -- Assuming obstack is in libc
> -- Checking availability of obstack library - done
> -- Version: v1.31-tarball-g416753b4ba90 (from HEAD file)
> -- Configuring done (0.1s)
> -- Generating done (0.0s)
> -- Build files have been written to: /git/dwarves-1.31/build
> make: Entering directory '/git/dwarves-1.31/build'
> [ 36%] Built target bpf
> [ 56%] Built target dwarves
> [ 65%] Built target dwarves_reorganize
> [ 67%] Built target dwarves_emit
> [ 67%] Built target dtagnames
> [ 70%] Built target codiff
> [ 74%] Built target pdwtags
> [ 77%] Built target pglobal
> [ 82%] Built target scncopy
> [ 86%] Built target syscse
> [ 89%] Built target prefcnt
> [ 93%] Built target ctracer
> [ 96%] Built target pfunct
> [100%] Built target pahole
> make: Leaving directory '/git/dwarves-1.31/build'
> Testing pahole version:
> v1.31-tarball-g416753b4ba90
>
> Verbose mode enabled - showing diagnostic information:
> Architecture: x86_64
> CPUs: 32
> Memory: 62.7 GB
> Swap: 8.0 GB
> Parallelism: unlimited (all tests run in parallel)
> Tip: On low-memory systems, use -j to limit parallelism (e.g., -j 4 or -j 1)
> Test artifacts: /tmp/pahole-tests/
> Compiler: clang version 22.1.8 (Fedora 22.1.8-20.fc45)
> libc: ldd (GNU libc) 2.44
> bpftool: bpftool v7.7.0
> VMLINUX: /tmp/vmlinux
> PERF_BIN: not set
> PERF_SRC_DIR: not set
>
> 1: dwarves_emit.c: _Atomic type compile emission. : Ok
> 2: _Atomic type display and --skip_emitting_atomic_typedefs. : Ok
> 3: Auxiliary tools: pglobal, prefcnt, dtagnames. : Ok
> 4: Bitfield layout and data member filtering. : Ok
> 5: dwarf_loader coverage: bitfields, templates, enums, inlines. : Ok
> 6: Bitfield typedef recoding (tag__recode_dwarf_bitfield). : Ok
> 7: BTF arena type tag encoding for kfuncs. : Ok
> 8: BTF multi-dimensional array encoding and round-trip. : Ok
> 9: BTF bitfield encoding and loading round-trip. : Ok
> 10: BTF VAR and DATASEC encoding for global variables. : Ok
> 11: BTF deduplication of array types across CUs. : Ok
> 12: Distilled base BTF generation. : Ok
> 13: BTF encoding options. : Ok
> 14: BTF encoder coverage. : Ok
> 15: Validation of BTF encoding of functions. : Ok
> 16: BTF_KIND_FWD encoding and loading round-trip. : Ok
> 17: BTF encoding with invalid symbol names. : Ok
> 18: Split BTF encoding (vmlinux base + kernel module). : Skip (no loaded module with debuginfod-available debuginfo found)
> 19: Check BTF type tag order. : Ok
> 20: BTF FLOAT and ENUM64 type encoding. : Ok
> 21: BTF encoder verbose logging coverage. : Ok
> 22: BTF encoding into ELF via pahole -J (btf_encoder__write_elf). : Ok
> 23: BTF true_signature: clang optimized aggregate parameters (2 structs: Ok
> 24: BTF true_signature: clang optimized aggregate parameters (2 structs: Ok
> 25: BTF true_signature: clang optimized with large union parameter : Ok
> 26: BTF true_signature: clang optimized parameters (scalar) : Ok
> 27: BTF true_signature: clang optimized with stack parameters (9 params: Ok
> 28: BTF true_signature: clang optimized with stack parameters (non-stat: Ok
> 29: Class name list from file. : Ok
> 30: CLI display and filtering options. : Ok
> 31: codiff struct comparison. : Ok
> 32: codiff coverage: terse, functions, verbose, multi-CU. : Ok
> 33: codiff member change coverage. : Ok
> 34: codiff multi-CU: __cus__find_cu_by_name coverage. : Ok
> 35: Compilable output and type filtering. : Ok
> 36: Type containment and pointer search. : Ok
> 37: C++ namespace and using-declaration display. : Ok
> 38: C++ variadic template parameter pack handling. : Ok
> 39: Class name filtering. : Ok
> 40: Default BTF on a system without BTF. : Ok
> 41: Display format options. : Ok
> 42: dwarf_loader.c edge cases: bitfield recode, inlining, call sites. : Ok
> 43: dwarves.c core API coverage. : Ok
> 44: DWZ alternate debug file type resolution. : Ok
> 45: Atomic typedef emission. : Ok
> 46: Legacy atomic_ base type emission via --compile (hand-crafted DWARF: Ok
> 47: dwarves_emit.c / dwarves_reorganize.c coverage. : Ok
> 48: Enumerator search. : Ok
> 49: Expand pointers option. : Ok
> 50: Type expansion and anonymous struct options. : Ok
> 51: Flexible arrays accounting. : Ok
> 52: Validation of GCC optimized parameters in default BTF. : Ok
> 53: Validation of BTF encoding of true_signatures. : Skip (no optimizations applied.)
> 54: Multi-file loading (cus__load_files). : Ok
> 55: Version output. : Ok
> 56: Header, range and seek_bytes prettify paths. : Ok
> 57: pahole.c scattered option paths. : Ok
> 58: pdwtags DWARF tag display. : Ok
> 59: Check that pfunct can print btf_decl_tags read from BTF. : Ok
> 60: pfunct coverage: symtab, class, expand_types, compile. : Ok
> 61: pfunct function statistics. : Ok
> 62: pglobal basic: variables, functions, static exclusion. : Ok
> 63: prefcnt.c: reference counting coverage. : Ok
> 64: Cacheline boundary display with large structs. : Ok
> 65: Sizes and holes display. : Ok
> 66: Small files coverage: elf_symtab, gobuffer, dutil, pglobal. : Ok
> 67: Sort output and separator. : Ok
> 68: Typedef chain display. : Ok
> 70: Compare parallel vs merged CU loading for inter-CU type references.: Ok
> 71: Pretty printing of files using DWARF type information. : Ok
> 72: Prototype expression parsing and prettify. : Ok
> 73: Parallel reproducible DWARF Loading/Serial BTF encoding. : Ok
> 69: BTF encoding on vmlinux. : Ok
> Saved timing data to .test-times (73 tests)
>
> toolsbuilder@five:~$
>
>
next prev parent reply other threads:[~2026-08-30 17:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260821213510.22423-1-acme@kernel.org>
[not found] ` <ao442rldWrCNG3zC@x2>
[not found] ` <d85a69a5-b08a-4ec8-b09c-4e45b7c1f712@oracle.com>
[not found] ` <ao7lqxytDiHmVmkk@x2>
[not found] ` <0e1c3820-c16b-4266-bde4-655b760b3db4@oracle.com>
2026-08-28 22:59 ` [PATCH v2 0/9] pahole: Support cross-CU type references and dwz alternate debug files Arnaldo Carvalho de Melo
[not found] ` <apM_W9ld8Bj3q5Vk@x2>
2026-08-30 17:08 ` Alan Maguire [this message]
2026-08-31 0:18 ` RFT: coverage analysis and lots more regression tests in the 'next' branch. Was: " Arnaldo Carvalho de Melo
2026-08-31 0:48 ` Arnaldo Carvalho de Melo
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=5e3b9e48-00f5-43d1-a383-2b1c59342e87@oracle.com \
--to=alan.maguire@oracle.com \
--cc=acme@kernel.org \
--cc=acme@redhat.com \
--cc=andrii@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=dwarves@vger.kernel.org \
--cc=jolsa@kernel.org \
--cc=williams@redhat.com \
--cc=yonghong.song@linux.dev \
/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