forked from acmel/dwarves
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
- Loading branch information
Showing
4 changed files
with
138 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -53,6 +53,7 @@ changes-v1.21 | |
changes-v1.22 | ||
changes-v1.23 | ||
changes-v1.24 | ||
changes-v1.25 | ||
buildcmd.sh | ||
COPYING | ||
NEWS | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
DWARF loader: | ||
|
||
- Support for DW_TAG_unspecified_type more generally, that in binutils 2.40 is used | ||
for assembly functions, resulting in BTF encoding problems when building the Linux | ||
kernel. | ||
|
||
- Make sure struct member offsets are in ascending order. This is part of the set of | ||
changes to support encoding BTF for Rust for use with the Linux kernel, where the | ||
BTF verifier considers invalid offset unordered struct members. | ||
|
||
- Support C atomic types (DW_TAG_atomic_type), that are not used in the Linux kernel but | ||
is present in user space components such as Open VSwitch. | ||
|
||
BTF loader: | ||
|
||
- Initial support for DW_TAG_LLVM_annotation, used for BTF type tags, to encode things | ||
like __rcu, __user annotations in the Linux kernel. This is still in flux with changes | ||
in how these are encoded that resulted from the discussion to support this in gcc in | ||
addition to in clang, where it was first designed. | ||
|
||
BTF encoder: | ||
|
||
- Exclude functions with the same name (static functions in different CUs), | ||
inconsistent prototypes or not following calling convention. | ||
|
||
- Allow generation of BTF for optimized functions, those that end with a .isra* | ||
suffix (inter procedural scalar replacement of aggregates) or .constprop* | ||
(constant propagation). | ||
|
||
Pretty printer: | ||
|
||
- For now the DW_TAG_LLVM_annotation tags are being suppressed, so the output from | ||
BTF and DWARF matches, further work is planned to support it so that the output | ||
matches the original source code and can be recompilable, resulting in the same | ||
DWARF info. | ||
|
||
- Support C atomic types, allowing the generation of source code that can be | ||
compiled with resulting DWARF info matching the original source code. | ||
|
||
pahole: | ||
|
||
- Support --lang=/--lang_exclude=asm, the DW_LANG_ define for assembly is out | ||
of order, special case it to support asking for CUs written in assembly to be | ||
selected or excluded. | ||
|
||
- Support suppressing the atomic type modifiers/attributes. | ||
|
||
- Allow filtering out functions optimized by the compiler, where the calling convention isn't | ||
the one expected by BPF or arguments are optimized out. | ||
|
||
- Support --compile from DWARF in addition to from BTF, this allows user space components | ||
such as Open VSwitch to use pahole to generate compilable code for its data structures. | ||
|
||
btfdiff: | ||
|
||
- Exclude RUST CUs, as those are not yet being BTF encoded. | ||
|
||
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,7 +2,7 @@ | |
%define libver 1 | ||
|
||
Name: dwarves | ||
Version: 1.24 | ||
Version: 1.25 | ||
Release: 1%{?dist} | ||
License: GPLv2 | ||
Summary: Debugging Information Manipulation Tools (pahole & friends) | ||
|
@@ -79,7 +79,7 @@ rm -Rf %{buildroot} | |
%files | ||
%doc README.ctracer | ||
%doc README.btf | ||
%doc changes-v1.24 | ||
%doc changes-v1.25 | ||
%doc NEWS | ||
%{_bindir}/btfdiff | ||
%{_bindir}/codiff | ||
|
@@ -131,6 +131,18 @@ rm -Rf %{buildroot} | |
%{_libdir}/%{libname}_reorganize.so | ||
|
||
%changelog | ||
* Sat Apr 8 2023 Arnaldo Carvalho de Melo <[email protected]> - 1.25-1 | ||
- New release: v1.25 | ||
- Support for DW_TAG_unspecified_type more generally. | ||
- Make sure struct member offsets are in ascending order. Rust BTF needs this. | ||
- Support C atomic types (DW_TAG_atomic_type). | ||
- Initial support for DW_TAG_LLVM_annotation, used for BTF type tags, for __rcu, __user, etc | ||
- Exclude functions with the same name (static functions in different CUs), inconsistent prototypes or not following calling convention. | ||
- Allow generation of BTF for optimized functions, those that end with a .isra*, .constprop*. | ||
- Support 'pahole --lang=/--lang_exclude=asm' | ||
- Support --compile from DWARF in addition to from BTF. | ||
- Exclude RUST CUs in 'btfdiff', as those are not yet being BTF encoded. | ||
|
||
* Wed Aug 17 2022 Arnaldo Carvalho de Melo <[email protected]> - 1.24-1 | ||
- New release: v1.24 | ||
- Add support to BTF_KIND_ENUM64. | ||
|