When building a kernel with LLVM and CONFIG_DEBUG_INFO_BTF after commit
32ef9e5054ec ("Makefile.debug: re-enable debug info for .S files") in
the kernel, I see the following spew of warnings, which appear to come
from pahole:
die__process_unit: DW_TAG_label (0xa) @ <0x7b> not handled!
die__process_unit: tag not supported 0xa (label)!
die__process_unit: DW_TAG_label (0xa) @ <0x97> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0xbd> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0xed> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0x109> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0x12a> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0x146> not handled!
die__process_unit: DW_TAG_label (0xa) @ <0x16f> not handled!
To fix this issue, backport dwarves upstream patch:
dwarf_loader: Support DW_TAG_label outside DW_TAG_lexblock
Signed-off-by: Chenxi Mao <chenxi.mao@suse.com>
(cherry picked from commit 934a5d12d585348b435c0e32fb37ad5b97421cae)
113 lines
3.3 KiB
RPMSpec
113 lines
3.3 KiB
RPMSpec
%define libname libdwarves
|
|
%define libver 1
|
|
%define libbpfver 393a058
|
|
|
|
Name: dwarves
|
|
Version: 1.22
|
|
Release: 2
|
|
License: GPLv2
|
|
Summary: Debugging Information Manipulation Tools
|
|
URL: http://acmel.wordpress.com
|
|
Source: http://github.com/acmel/dwarves/archive/v%{version}.tar.gz
|
|
Source1: http://github.com/libbpf/libbpf/archive/%{libbpfver}.tar.gz
|
|
Requires: %{libname}%{libver} = %{version}-%{release}
|
|
BuildRequires: gcc
|
|
BuildRequires: cmake
|
|
BuildRequires: zlib-devel
|
|
BuildRequires: elfutils-devel >= 0.170
|
|
|
|
Patch0: replace-deprecated-libbpf-APIs-with-new-ones.patch
|
|
Patch1: backport-dwarf_loader-Support-DW_TAG_label-outside-DW_TAG_lex.patch
|
|
|
|
%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.
|
|
|
|
%package -n %{libname}%{libver}
|
|
Summary: Debugging information processing library
|
|
|
|
%description -n %{libname}%{libver}
|
|
Debugging information processing library.
|
|
|
|
%package -n %{libname}%{libver}-devel
|
|
Summary: Debugging information library development files
|
|
Requires: %{libname}%{libver} = %{version}-%{release}
|
|
|
|
%description -n %{libname}%{libver}-devel
|
|
Debugging information processing library development files.
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{name}-%{version}
|
|
tar -zxvf %{SOURCE1} --strip-components 1 -C %{_builddir}/%{name}-%{version}/lib/bpf/
|
|
|
|
%build
|
|
# Remove _FORTIFY_SOURCE from CFLAGS or else will get below error:
|
|
# error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
|
|
export CFLAGS=$(echo %optflags | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//g')
|
|
|
|
%cmake .
|
|
make VERBOSE=1 %{?_smp_mflags}
|
|
|
|
%install
|
|
rm -Rf %{buildroot}
|
|
make install DESTDIR=%{buildroot}
|
|
|
|
%ldconfig_scriptlets -n %{libname}%{libver}
|
|
|
|
%files
|
|
%doc README.ctracer
|
|
%doc README.btf
|
|
%doc changes-v1.17
|
|
%doc NEWS
|
|
%{_bindir}/*
|
|
%dir %{_datadir}/dwarves/
|
|
%dir %{_datadir}/dwarves/runtime/
|
|
%dir %{_datadir}/dwarves/runtime/python/
|
|
%defattr(0644,root,root,0755)
|
|
%{_mandir}/man1/pahole.1*
|
|
%{_datadir}/dwarves/runtime/Makefile
|
|
%{_datadir}/dwarves/runtime/linux.blacklist.cu
|
|
%{_datadir}/dwarves/runtime/ctracer_relay.c
|
|
%{_datadir}/dwarves/runtime/ctracer_relay.h
|
|
%attr(0755,root,root) %{_datadir}/dwarves/runtime/python/ostra.py*
|
|
|
|
%files -n %{libname}%{libver}
|
|
%{_libdir}/%{libname}.so.*
|
|
%{_libdir}/%{libname}_emit.so.*
|
|
%{_libdir}/%{libname}_reorganize.so.*
|
|
|
|
%files -n %{libname}%{libver}-devel
|
|
%doc MANIFEST README
|
|
%{_includedir}/*
|
|
%{_libdir}/%{libname}.so
|
|
%{_libdir}/%{libname}_emit.so
|
|
%{_libdir}/%{libname}_reorganize.so
|
|
|
|
%changelog
|
|
* Mon Mar 21 2022 - Kai Liu <kai.liu@suse.com> - 1.22-2
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC: Fix spew of warnings if build kernel with LLVM and
|
|
CONFIG_DEBUG_INFO_BTF after commit 32ef9e5054ec
|
|
("Makefile.debug: re-enable debug info for .S files")
|
|
|
|
* Mon Mar 21 2022 - Kai Liu <kai.liu@suse.com> - 1.22-1
|
|
- Upgrade to v1.22. Also upgrade bundled libbpf to commit 393a058,
|
|
the same as upstream submodule version.
|
|
Introduce a patch from upstream commit 73383b3a3 to avoid using
|
|
deprecated libbpf APIs.
|
|
|
|
* Mon May 24 2021 xiaqirong <xiaqirong1@huawei.com> - 1.17-2
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:bugfix about stopping using the deprecated mallinfo function
|
|
|
|
* Wed Sep 16 2020 xiaqirong <xiaqirong1@huawei.com> - 1.17-1
|
|
- Type:package init
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:add dwarves package
|