import elfutils-0.182-3.el8

This commit is contained in:
CentOS Sources 2021-05-18 02:36:48 -04:00 committed by Andrew Lukoshko
parent 7fe8c60c3e
commit 28bfe3e2db
5 changed files with 118 additions and 10 deletions

View File

@ -1 +1 @@
c1ed871515b0f7fcdf2d94fea23e4b8ba67e8fe3 SOURCES/elfutils-0.180.tar.bz2
3efc2253564a2ca8be0a5cf9aba3e4b5f544ee22 SOURCES/elfutils-0.182.tar.bz2

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/elfutils-0.180.tar.bz2
SOURCES/elfutils-0.182.tar.bz2

View File

@ -0,0 +1,43 @@
commit f172a31c56405750114924eba0786999bccc501f
Author: Mark Wielaard <mark@klomp.org>
Date: Mon Nov 2 15:20:54 2020 +0100
tests: Create bogus R/nothing.rpm with cyclic symlink.
We used to try to trigger an error during debuginfod scanning using
a chmod 000 file. But this doesn't always result in an error. Create
a cyclic symlink instead, which always results in a failure to open/read.
Signed-off-by: Mark Wielaard <mark@klomp.org>
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 57fc4c8e..2f8b75c3 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,8 @@
+2020-11-02 Mark Wielaard <mark@klomp.org>
+
+ * run-debuginfod-find.sh: Create bogus R/nothing.rpm with cyclic
+ symlink instead of chmod 000.
+
2020-10-31 Mark Wielaard <mark@klomp.org>
* dwfl-proc-attach.c (dlopen): New external function override.
diff --git a/tests/run-debuginfod-find.sh b/tests/run-debuginfod-find.sh
index 48dbc7d4..5af45667 100755
--- a/tests/run-debuginfod-find.sh
+++ b/tests/run-debuginfod-find.sh
@@ -95,9 +95,10 @@ wait_ready()
fi
}
-# create a 000 empty .rpm file to evoke a metric-visible error
-touch R/nothing.rpm
-chmod 000 R/nothing.rpm
+# create a bogus .rpm file to evoke a metric-visible error
+# Use a cyclic symlink instead of chmod 000 to make sure even root
+# would see an error (running the testsuite under root is NOT encouraged).
+ln -s R/nothing.rpm R/nothing.rpm
env LD_LIBRARY_PATH=$ldpath DEBUGINFOD_URLS= ${abs_builddir}/../debuginfod/debuginfod $VERBOSE -F -R -d $DB -p $PORT1 -t0 -g0 --fdcache-fds 1 --fdcache-mbs 2 -Z .tar.xz -Z .tar.bz2=bzcat -v R F Z L > vlog4 2>&1 &
PID1=$!

View File

@ -0,0 +1,39 @@
commit e4d985a3c1c873f77d20fa0cd421458cc2824996
Author: Andreas Krebbel <krebbel@linux.ibm.com>
Date: Thu Nov 19 20:32:24 2020 +0100
IBM Z: Fix endianess problem in pid_memory_read
The cached reads lack the big endian adjustments done in the fallback
path.
Signed-off-by: Andreas Krebbel <krebbel@linux.ibm.com>
diff --git a/libdwfl/linux-pid-attach.c b/libdwfl/linux-pid-attach.c
index 3a6af997..b23139d9 100644
--- a/libdwfl/linux-pid-attach.c
+++ b/libdwfl/linux-pid-attach.c
@@ -193,14 +193,22 @@ pid_memory_read (Dwfl *dwfl, Dwarf_Addr addr, Dwarf_Word *result, void *arg)
{
struct __libdwfl_pid_arg *pid_arg = arg;
pid_t tid = pid_arg->tid_attached;
+ Dwfl_Process *process = dwfl->process;
assert (tid > 0);
#ifdef HAVE_PROCESS_VM_READV
if (read_cached_memory (pid_arg, addr, result))
+ {
+#if SIZEOF_LONG == 8
+# if BYTE_ORDER == BIG_ENDIAN
+ if (ebl_get_elfclass (process->ebl) == ELFCLASS32)
+ *result >>= 32;
+# endif
+#endif
return true;
+ }
#endif
- Dwfl_Process *process = dwfl->process;
if (ebl_get_elfclass (process->ebl) == ELFCLASS64)
{
#if SIZEOF_LONG == 8

View File

@ -1,6 +1,6 @@
Name: elfutils
Version: 0.180
%global baserelease 1
Version: 0.182
%global baserelease 3
Release: %{baserelease}%{?dist}
URL: http://elfutils.org/
%global source_url ftp://sourceware.org/pub/elfutils/%{version}/
@ -31,6 +31,7 @@ BuildRequires: flex
BuildRequires: zlib-devel
BuildRequires: bzip2-devel
BuildRequires: xz-devel
BuildRequires: libzstd-devel
# For debuginfod
BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
@ -40,7 +41,8 @@ BuildRequires: pkgconfig(libarchive) >= 3.1.2
# For tests need to bunzip2 test files.
BuildRequires: bzip2
# For the run-debuginfod-find.sh test case in %check for /usr/sbin/ss
BuildRequires: zstd
# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss
BuildRequires: iproute
BuildRequires: bsdtar
BuildRequires: curl
@ -55,6 +57,8 @@ BuildRequires: curl
%endif
# Patches
Patch1: elfutils-0.182-debuginfod-test-fix.patch
Patch2: elfutils-0.182-s390-pid_memory_read.patch
%description
Elfutils is a collection of utilities, including stack (to show
@ -246,6 +250,8 @@ such servers to download those files on demand.
%setup -q
# Apply patches
%patch1 -p1 -b .debuginfod_test_fix
%patch2 -p1
# In case the above patches added any new test scripts, make sure they
# are executable.
@ -264,14 +270,18 @@ RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wformat"
trap 'cat config.log' EXIT
%configure CFLAGS="$RPM_OPT_FLAGS -fexceptions"
trap '' EXIT
make -s %{?_smp_mflags}
%make_build -s
%install
rm -rf ${RPM_BUILD_ROOT}
make -s install DESTDIR=${RPM_BUILD_ROOT}
%make_install -s
chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
# We don't have standard DEBUGINFOD_URLS yet.
rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.sh
rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.csh
%find_lang %{name}
%if %{provide_yama_scope}
@ -287,7 +297,7 @@ touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
# Record some build root versions in build.log
uname -r; rpm -q binutils gcc glibc
make -s %{?_smp_mflags} check || (cat tests/test-suite.log; false)
%make_build -s check || (cat tests/test-suite.log; false)
# Only the latest Fedora and EPEL have these scriptlets,
# older Fedora and plain RHEL don't.
@ -401,13 +411,13 @@ fi
%files debuginfod
%defattr(-,root,root)
%{_bindir}/debuginfod
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/sysconfig/debuginfod
%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod
%{_unitdir}/debuginfod.service
%{_sysconfdir}/sysconfig/debuginfod
%{_mandir}/man8/debuginfod.8*
%dir %attr(0700,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod
%verify(not md5 size mtime) %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
%pre debuginfod
getent group debuginfod >/dev/null || groupadd -r debuginfod
@ -423,6 +433,22 @@ exit 0
%systemd_postun_with_restart debuginfod.service
%changelog
* Thu Dec 17 2020 Mark Wielaard <mjw@redhat.com> - 0.182-3
- Add elfutils-0.182-s390-pid_memory_read.patch
* Mon Nov 2 2020 Mark Wielaard <mjw@redhat.com> - 0.182-2
- Add elfutils-0.182-debuginfod-test-fix.patch.
* Mon Nov 2 2020 Mark Wielaard <mjw@redhat.com> - 0.182-1
- Upgrade to upstream 0.182
- backends: Support for tilegx has been removed.
- config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS.
- debuginfod: More efficient package traversal, tolerate various
errors during scanning, grooming progress is more visible and
interruptible, more prometheus metrics.
- debuginfod-client: Now supports compressed (kernel) ELF images.
- libdwfl: Add ZSTD compression support.
* Thu Jun 11 2020 Mark Wielaard <mjw@redhat.com> - 0.180-1
- New upstream release.