-------------------------------------------------------------------------------- Fedora Update Notification FEDORA-2021-804e7a572c 2021-02-06 01:15:55.080839 --------------------------------------------------------------------------------
Name : dwarves Product : Fedora 33 Version : 1.20 Release : 1.fc33 URL : http://acmel.wordpress.com Summary : Debugging Information Manipulation Tools (pahole & friends) Description : dwarves is a set of tools that use the debugging information inserted in ELF binaries by compilers such as GCC, used by well known debuggers such as GDB, and more recent ones such as systemtap.
Utilities in the dwarves suite include pahole, that can be used to find alignment holes in structs and classes in languages such as C, C++, but not limited to these.
It also extracts other information such as CPU cacheline alignment, helping pack those structures to achieve more cache hits.
These tools can also be used to encode and read the BTF type information format used with the Linux kernel bpf syscall, using 'pahole -J' and 'pahole -F btf'.
A diff like tool, codiff can be used to compare the effects changes in source code generate on the resulting binaries.
Another tool is pfunct, that can be used to find all sorts of information about functions, inlines, decisions made by the compiler about inlining, etc.
One example of pfunct usage is in the fullcircle tool, a shell that drivers pfunct to generate compileable code out of a .o file and then build it using gcc, with the same compiler flags, and then use codiff to make sure the original .o file and the new one generated from debug info produces the same debug info.
Pahole also can be used to use all this type information to pretty print raw data according to command line directions.
Headers can have its data format described from debugging info and offsets from it can be used to further format a number of records.
The btfdiff utility compares the output of pahole from BTF and DWARF to make sure they produce the same results.
-------------------------------------------------------------------------------- Update Information:
New release: v1.20 -------------------------------------------------------------------------------- ChangeLog:
* Tue Feb 2 2021 Arnaldo Carvalho de Melo acme@redhat.com - 1.20-1 - New release: 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 - Cope with functions without a name - Fix BTF variable generation for kernel modules - Fix address size to match what is in the ELF file being processed. - Use kernel module ftrace addresses when finding which functions to encode. - libbpf: - Allow use of packaged version. - dwarf_loader: - Support DW_AT_data_bit_offset - DW_FORM_implicit_const in attr_numeric() and attr_offset() - Support DW_TAG_GNU_call_site, standardized rename of DW_TAG_GNU_call_site. - build: - Fix compilation on 32-bit architectures. -------------------------------------------------------------------------------- References:
[ 1 ] Bug #1922698 - many DW_TAG_INVALID errors https://bugzilla.redhat.com/show_bug.cgi?id=1922698 --------------------------------------------------------------------------------
This update can be installed with the "dnf" update program. Use su -c 'dnf upgrade --advisory FEDORA-2021-804e7a572c' at the command line. For more information, refer to the dnf documentation available at http://dnf.readthedocs.io/en/latest/command_ref.html#upgrade-command-label
All packages are signed with the Fedora Project GPG key. More details on the GPG keys used by the Fedora Project can be found at https://fedoraproject.org/keys --------------------------------------------------------------------------------
package-announce@lists.fedoraproject.org