[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+icZUXwtrxbZib+nUD8t4mjqR_4r2nxHb4ob2a1KmaNPeTv2g@mail.gmail.com>
Date: Thu, 4 Feb 2021 23:10:12 +0100
From: Sedat Dilek <sedat.dilek@...il.com>
To: Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>
Cc: dwarves@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
bpf@...r.kernel.org, Jiri Olsa <jolsa@...nel.org>,
Jan Engelhardt <jengelh@...i.de>,
Domenico Andreoli <cavok@...ian.org>,
Matthias Schwarzott <zzam@...too.org>,
Andrii Nakryiko <andriin@...com>, Yonghong Song <yhs@...com>,
Mark Wieelard <mjw@...hat.com>,
Paul Moore <paul@...l-moore.com>,
Ondrej Mosnacek <omosnace@...hat.com>,
Daniel P. Berrangé <berrange@...hat.com>,
Tom Stellard <tstellar@...hat.com>
Subject: Re: ANNOUNCE: pahole v1.20 (gcc11 DWARF5's default, lots of ELF
sections, BTF)
On Thu, Feb 4, 2021 at 11:07 PM Arnaldo Carvalho de Melo
<arnaldo.melo@...il.com> wrote:
>
> Hi,
>
> The v1.20 release of pahole and its friends is out, mostly
> addressing problems related to gcc 11 defaulting to DWARF5 for -g,
> available at the usual places:
>
Congrats and thanks for v1.20 and to all involved folks.
- Sedat -
> Main git repo:
>
> git://git.kernel.org/pub/scm/devel/pahole/pahole.git
>
> Mirror git repo:
>
> https://github.com/acmel/dwarves.git
>
> tarball + gpg signature:
>
> https://fedorapeople.org/~acme/dwarves/dwarves-1.20.tar.xz
> https://fedorapeople.org/~acme/dwarves/dwarves-1.20.tar.bz2
> https://fedorapeople.org/~acme/dwarves/dwarves-1.20.tar.sign
>
> Best Regards,
>
> - Arnaldo
>
> v1.20:
>
> BTF encoder:
>
> - Improve ELF error reporting using elf_errmsg(elf_errno()).
>
> - Improve objcopy error handling.
>
> - Fix handling of 'restrict' qualifier, that was being treated as a 'const'.
>
> - Support SHN_XINDEX in st_shndx symbol indexes, to handle ELF objects with
> more than 65534 sections, for instance, which happens with kernels built
> with 'KCFLAGS="-ffunction-sections -fdata-sections", Other cases may
> include when using FG-ASLR, LTO.
>
> - Cope with functions without a name, as seen sometimes when building kernel
> images with some versions of clang, when a SEGFAULT was taking place.
>
> - Fix BTF variable generation for kernel modules, not skipping variables at
> offset zero.
>
> - Fix address size to match what is in the ELF file being processed, to fix using
> a 64-bit pahole binary to generate BTF for a 32-bit vmlinux image.
>
> - Use kernel module ftrace addresses when finding which functions to encode,
> which increases the number of functions encoded.
>
> libbpf:
>
> - Allow use of packaged version, for distros wanting to dynamically link with
> the system's libbpf package instead of using the libbpf git submodule shipped
> in pahole's source code.
>
> DWARF loader:
>
> - Support DW_AT_data_bit_offset
>
> This appeared in DWARF4 but is supported only in gcc's -gdwarf-5,
> support it in a way that makes the output be the same for both cases.
>
> $ gcc -gdwarf-5 -c examples/dwarf5/bf.c
> $ pahole bf.o
> struct pea {
> long int a:1; /* 0: 0 8 */
> long int b:1; /* 0: 1 8 */
> long int c:1; /* 0: 2 8 */
>
> /* XXX 29 bits hole, try to pack */
> /* Bitfield combined with next fields */
>
> int after_bitfield; /* 4 4 */
>
> /* size: 8, cachelines: 1, members: 4 */
> /* sum members: 4 */
> /* sum bitfield members: 3 bits, bit holes: 1, sum bit holes: 29 bits */
> /* last cacheline: 8 bytes */
> };
>
> - DW_FORM_implicit_const in attr_numeric() and attr_offset()
>
> - Support DW_TAG_GNU_call_site, its the standardized rename of the previously supported
> DW_TAG_GNU_call_site.
>
> build:
>
> - Fix compilation on 32-bit architectures.
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com>
Powered by blists - more mailing lists