Compare commits
No commits in common. "c8" and "c10s" have entirely different histories.
@ -1,2 +0,0 @@
|
||||
b33fdb927bc154f6ca6285194d0e40fb76877dd0 SOURCES/elfutils-0.190.tar.bz2
|
||||
f9875667f09b76d7a2c2bf19c9df80a5a95c1824 SOURCES/testcore-noncontig.bz2
|
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
37
.gitignore
vendored
37
.gitignore
vendored
@ -1,2 +1,35 @@
|
||||
SOURCES/elfutils-0.190.tar.bz2
|
||||
SOURCES/testcore-noncontig.bz2
|
||||
/elfutils-0.158.tar.bz2
|
||||
/elfutils-0.159.tar.bz2
|
||||
/elfutils-0.160.tar.bz2
|
||||
/elfutils-0.161.tar.bz2
|
||||
/elfutils-0.162.tar.bz2
|
||||
/elfutils-0.163.tar.bz2
|
||||
/elfutils-0.164.tar.bz2
|
||||
/elfutils-0.165.tar.bz2
|
||||
/elfutils-0.166.tar.bz2
|
||||
/elfutils-0.167.tar.bz2
|
||||
/elfutils-0.168.tar.bz2
|
||||
/elfutils-0.169.tar.bz2
|
||||
/elfutils-0.170.tar.bz2
|
||||
/elfutils-0.171.tar.bz2
|
||||
/elfutils-0.172.tar.bz2
|
||||
/elfutils-0.173.tar.bz2
|
||||
/elfutils-0.174.tar.bz2
|
||||
/elfutils-0.175.tar.bz2
|
||||
/elfutils-0.176.tar.bz2
|
||||
/elfutils-0.177.tar.bz2
|
||||
/elfutils-0.178.tar.bz2
|
||||
/elfutils-0.179.tar.bz2
|
||||
/elfutils-0.180.tar.bz2
|
||||
/elfutils-0.181.tar.bz2
|
||||
/elfutils-0.182.tar.bz2
|
||||
/elfutils-0.183.tar.bz2
|
||||
/elfutils-0.184.tar.bz2
|
||||
/elfutils-0.185.tar.bz2
|
||||
/elfutils-0.186.tar.bz2
|
||||
/elfutils-0.187.tar.bz2
|
||||
/elfutils-0.188.tar.bz2
|
||||
/elfutils-0.189.tar.bz2
|
||||
/elfutils-0.190.tar.bz2
|
||||
/elfutils-0.191.tar.bz2
|
||||
/elfutils-0.192.tar.bz2
|
||||
|
@ -1,329 +0,0 @@
|
||||
From c791d16b7dcf9d985ebe0e852481142753603353 Mon Sep 17 00:00:00 2001
|
||||
From: Aaron Merey <amerey@redhat.com>
|
||||
Date: Fri, 8 Dec 2023 16:44:35 -0500
|
||||
Subject: [PATCH] libdwfl: Correctly handle corefile non-contiguous segments
|
||||
|
||||
It is possible for segments of different shared libaries to be interleaved
|
||||
in memory such that the segments of one library are located in between
|
||||
non-contiguous segments of another library.
|
||||
|
||||
For example, this can be seen with firefox on RHEL 7.9 where multiple
|
||||
shared libraries could be mapped in between ld-2.17.so segments:
|
||||
|
||||
[...]
|
||||
7f0972082000-7f09720a4000 00000000 139264 /usr/lib64/ld-2.17.so
|
||||
7f09720a4000-7f09720a5000 00000000 4096 /memfd:mozilla-ipc (deleted)
|
||||
7f09720a5000-7f09720a7000 00000000 8192 /memfd:mozilla-ipc (deleted)
|
||||
7f09720a7000-7f09720a9000 00000000 8192 /memfd:mozilla-ipc (deleted)
|
||||
7f0972134000-7f0972136000 00000000 8192 /usr/lib64/firefox/libmozwayland.so
|
||||
7f0972136000-7f0972137000 00002000 4096 /usr/lib64/firefox/libmozwayland.so
|
||||
7f0972137000-7f0972138000 00003000 4096 /usr/lib64/firefox/libmozwayland.so
|
||||
7f0972138000-7f0972139000 00003000 4096 /usr/lib64/firefox/libmozwayland.so
|
||||
7f097213a000-7f0972147000 00000000 53248 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f0972147000-7f097221e000 0000d000 880640 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f097221e000-7f0972248000 000e4000 172032 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f0972248000-7f0972249000 0010e000 4096 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f0972249000-7f097224c000 0010e000 12288 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f097224c000-7f0972250000 00111000 16384 /usr/lib64/firefox/libmozsqlite3.so
|
||||
7f0972250000-7f0972253000 00000000 12288 /usr/lib64/firefox/liblgpllibs.so
|
||||
[...]
|
||||
7f09722a3000-7f09722a4000 00021000 4096 /usr/lib64/ld-2.17.so
|
||||
7f09722a4000-7f09722a5000 00022000 4096 /usr/lib64/ld-2.17.so
|
||||
|
||||
dwfl_segment_report_module did not account for the possibility of
|
||||
interleaving non-contiguous segments, resulting in premature closure
|
||||
of modules as well as failing to report modules.
|
||||
|
||||
Fix this by removing segment skipping in dwfl_segment_report_module.
|
||||
When dwfl_segment_report_module reported a module, it would return
|
||||
the index of the segment immediately following the end address of the
|
||||
current module. Since there's a chance that other modules might fall
|
||||
within this address range, dwfl_segment_report_module instead returns
|
||||
the index of the next segment.
|
||||
|
||||
This patch also fixes premature module closure that can occur in
|
||||
dwfl_segment_report_module when interleaving non-contiguous segments
|
||||
are found. Previously modules with start and end addresses that overlap
|
||||
with the current segment would have their build-ids compared with the
|
||||
current segment's build-id. If there was a mismatch, that module would
|
||||
be closed. Avoid closing modules in this case when mismatching build-ids
|
||||
correspond to distinct modules.
|
||||
|
||||
https://sourceware.org/bugzilla/show_bug.cgi?id=30975
|
||||
|
||||
Signed-off-by: Aaron Merey <amerey@redhat.com>
|
||||
---
|
||||
libdwfl/dwfl_segment_report_module.c | 37 +++++++++----
|
||||
tests/Makefile.am | 8 ++-
|
||||
tests/dwfl-core-noncontig.c | 82 ++++++++++++++++++++++++++++
|
||||
tests/run-dwfl-core-noncontig.sh | 63 +++++++++++++++++++++
|
||||
4 files changed, 176 insertions(+), 14 deletions(-)
|
||||
create mode 100644 tests/dwfl-core-noncontig.c
|
||||
create mode 100755 tests/run-dwfl-core-noncontig.sh
|
||||
|
||||
diff --git a/libdwfl/dwfl_segment_report_module.c b/libdwfl/dwfl_segment_report_module.c
|
||||
index 3ef62a7..09ee37b 100644
|
||||
--- a/libdwfl/dwfl_segment_report_module.c
|
||||
+++ b/libdwfl/dwfl_segment_report_module.c
|
||||
@@ -737,17 +737,34 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
|
||||
&& invalid_elf (module->elf, module->disk_file_has_build_id,
|
||||
&build_id))
|
||||
{
|
||||
- elf_end (module->elf);
|
||||
- close (module->fd);
|
||||
- module->elf = NULL;
|
||||
- module->fd = -1;
|
||||
+ /* If MODULE's build-id doesn't match the disk file's
|
||||
+ build-id, close ELF only if MODULE and ELF refer to
|
||||
+ different builds of files with the same name. This
|
||||
+ prevents premature closure of the correct ELF in cases
|
||||
+ where segments of a module are non-contiguous in memory. */
|
||||
+ if (name != NULL && module->name[0] != '\0'
|
||||
+ && strcmp (basename (module->name), basename (name)) == 0)
|
||||
+ {
|
||||
+ elf_end (module->elf);
|
||||
+ close (module->fd);
|
||||
+ module->elf = NULL;
|
||||
+ module->fd = -1;
|
||||
+ }
|
||||
}
|
||||
- if (module->elf != NULL)
|
||||
+ else if (module->elf != NULL)
|
||||
{
|
||||
- /* Ignore this found module if it would conflict in address
|
||||
- space with any already existing module of DWFL. */
|
||||
+ /* This module has already been reported. */
|
||||
skip_this_module = true;
|
||||
}
|
||||
+ else
|
||||
+ {
|
||||
+ /* Only report this module if we haven't already done so. */
|
||||
+ for (Dwfl_Module *mod = dwfl->modulelist; mod != NULL;
|
||||
+ mod = mod->next)
|
||||
+ if (mod->low_addr == module_start
|
||||
+ && mod->high_addr == module_end)
|
||||
+ skip_this_module = true;
|
||||
+ }
|
||||
}
|
||||
if (skip_this_module)
|
||||
goto out;
|
||||
@@ -781,10 +798,6 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
|
||||
}
|
||||
}
|
||||
|
||||
- /* Our return value now says to skip the segments contained
|
||||
- within the module. */
|
||||
- ndx = addr_segndx (dwfl, segment, module_end, true);
|
||||
-
|
||||
/* Examine its .dynamic section to get more interesting details.
|
||||
If it has DT_SONAME, we'll use that as the module name.
|
||||
If it has a DT_DEBUG, then it's actually a PIE rather than a DSO.
|
||||
@@ -929,6 +942,8 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
|
||||
ndx = -1;
|
||||
goto out;
|
||||
}
|
||||
+ else
|
||||
+ ndx++;
|
||||
|
||||
/* We have reported the module. Now let the caller decide whether we
|
||||
should read the whole thing in right now. */
|
||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index 7fb8efb..9f8f769 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -42,7 +42,7 @@ check_PROGRAMS = arextract arsymtest newfile saridx scnnames sectiondump \
|
||||
dwfl-bug-addr-overflow arls dwfl-bug-fd-leak \
|
||||
dwfl-addr-sect dwfl-bug-report early-offscn \
|
||||
dwfl-bug-getmodules dwarf-getmacros dwarf-ranges addrcfi \
|
||||
- dwarfcfi \
|
||||
+ dwfl-core-noncontig dwarfcfi \
|
||||
test-flag-nobits dwarf-getstring rerequest_tag \
|
||||
alldts typeiter typeiter2 low_high_pc \
|
||||
test-elf_cntl_gelf_getshdr dwflsyms dwfllines \
|
||||
@@ -212,7 +212,7 @@ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \
|
||||
$(asm_TESTS) run-disasm-bpf.sh run-low_high_pc-dw-form-indirect.sh \
|
||||
run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \
|
||||
run-readelf-dw-form-indirect.sh run-strip-largealign.sh \
|
||||
- run-readelf-Dd.sh
|
||||
+ run-readelf-Dd.sh run-dwfl-core-noncontig.sh
|
||||
|
||||
if !BIARCH
|
||||
export ELFUTILS_DISABLE_BIARCH = 1
|
||||
@@ -632,7 +632,8 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \
|
||||
run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \
|
||||
testfile_nvidia_linemap.bz2 \
|
||||
testfile-largealign.o.bz2 run-strip-largealign.sh \
|
||||
- run-funcretval++11.sh
|
||||
+ run-funcretval++11.sh \
|
||||
+ run-dwfl-core-noncontig.sh testcore-noncontig.bz2
|
||||
|
||||
|
||||
if USE_VALGRIND
|
||||
@@ -738,6 +739,7 @@ dwfl_bug_fd_leak_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
|
||||
dwfl_bug_report_LDADD = $(libdw) $(libebl) $(libelf)
|
||||
dwfl_bug_getmodules_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
|
||||
dwfl_addr_sect_LDADD = $(libeu) $(libdw) $(libebl) $(libelf) $(argp_LDADD)
|
||||
+dwfl_core_noncontig_LDADD = $(libdw) $(libelf)
|
||||
dwarf_getmacros_LDADD = $(libdw)
|
||||
dwarf_ranges_LDADD = $(libdw)
|
||||
dwarf_getstring_LDADD = $(libdw)
|
||||
diff --git a/tests/dwfl-core-noncontig.c b/tests/dwfl-core-noncontig.c
|
||||
new file mode 100644
|
||||
index 0000000..04558e2
|
||||
--- /dev/null
|
||||
+++ b/tests/dwfl-core-noncontig.c
|
||||
@@ -0,0 +1,82 @@
|
||||
+/* Test program for dwfl_getmodules bug.
|
||||
+ Copyright (C) 2008 Red Hat, Inc.
|
||||
+ This file is part of elfutils.
|
||||
+
|
||||
+ This file is free software; you can redistribute it and/or modify
|
||||
+ it under the terms of the GNU General Public License as published by
|
||||
+ the Free Software Foundation; either version 3 of the License, or
|
||||
+ (at your option) any later version.
|
||||
+
|
||||
+ elfutils is distributed in the hope that it will be useful, but
|
||||
+ WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ GNU General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU General Public License
|
||||
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#include <config.h>
|
||||
+#include <stdio.h>
|
||||
+#include <fcntl.h>
|
||||
+#include <assert.h>
|
||||
+#include ELFUTILS_HEADER(dwfl)
|
||||
+#include ELFUTILS_HEADER(elf)
|
||||
+
|
||||
+static const Dwfl_Callbacks cb =
|
||||
+{
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+};
|
||||
+
|
||||
+int
|
||||
+main (int argc, char **argv)
|
||||
+{
|
||||
+ assert (argc == 2);
|
||||
+
|
||||
+ Dwfl *dwfl = dwfl_begin (&cb);
|
||||
+
|
||||
+ int fd = open (argv[1], O_RDONLY);
|
||||
+ assert (fd != -1);
|
||||
+
|
||||
+ Elf *elf = elf_begin (fd, ELF_C_READ, NULL);
|
||||
+ (void) dwfl_core_file_report (dwfl, elf, argv[0]);
|
||||
+
|
||||
+ /* testcore-noncontig contains a shared library mapped between
|
||||
+ non-contiguous segments of another shared library:
|
||||
+
|
||||
+ [...]
|
||||
+ 7f14e458c000-7f14e45ae000 00000000 139264 /usr/lib64/ld-2.17.so (1)
|
||||
+ 7f14e4795000-7f14e4798000 00000000 12288 /usr/lib64/firefox/liblgpllibs.so (2)
|
||||
+ 7f14e4798000-7f14e479d000 00003000 20480 /usr/lib64/firefox/liblgpllibs.so
|
||||
+ 7f14e479d000-7f14e479f000 00008000 8192 /usr/lib64/firefox/liblgpllibs.so
|
||||
+ 7f14e479f000-7f14e47a0000 00009000 4096 /usr/lib64/firefox/liblgpllibs.so
|
||||
+ 7f14e47a0000-7f14e47a1000 0000a000 4096 /usr/lib64/firefox/liblgpllibs.so (3)
|
||||
+ 7f14e47ad000-7f14e47ae000 00021000 4096 /usr/lib64/ld-2.17.so (4)
|
||||
+ 7f14e47ae000-7f14e47af000 00022000 4096 /usr/lib64/ld-2.17.so */
|
||||
+
|
||||
+ /* First segment of the non-contiguous module (1). */
|
||||
+ int seg = dwfl_addrsegment (dwfl, 0x7f14e458c000, NULL);
|
||||
+ assert (seg == 32);
|
||||
+
|
||||
+ /* First segment of the module within the non-contiguous module's address
|
||||
+ range (2). */
|
||||
+ seg = dwfl_addrsegment (dwfl, 0x7f14e4795000, NULL);
|
||||
+ assert (seg == 33);
|
||||
+
|
||||
+ /* Last segment of the module within the non-contiguous module's
|
||||
+ address range (3). */
|
||||
+ seg = dwfl_addrsegment (dwfl, 0x7f14e47a0000, NULL);
|
||||
+ assert (seg == 37);
|
||||
+
|
||||
+ /* First segment of non-contiguous module following its address space
|
||||
+ gap (4). */
|
||||
+ seg = dwfl_addrsegment (dwfl, 0x7f14e47ad000, NULL);
|
||||
+ assert (seg == 40);
|
||||
+
|
||||
+ dwfl_end (dwfl);
|
||||
+ elf_end (elf);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
diff --git a/tests/run-dwfl-core-noncontig.sh b/tests/run-dwfl-core-noncontig.sh
|
||||
new file mode 100755
|
||||
index 0000000..1245b67
|
||||
--- /dev/null
|
||||
+++ b/tests/run-dwfl-core-noncontig.sh
|
||||
@@ -0,0 +1,63 @@
|
||||
+#! /bin/sh
|
||||
+# Copyright (C) 2023 Red Hat, Inc.
|
||||
+# This file is part of elfutils.
|
||||
+#
|
||||
+# This file is free software; you can redistribute it and/or modify
|
||||
+# it under the terms of the GNU General Public License as published by
|
||||
+# the Free Software Foundation; either version 3 of the License, or
|
||||
+# (at your option) any later version.
|
||||
+#
|
||||
+# elfutils is distributed in the hope that it will be useful, but
|
||||
+# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+# GNU General Public License for more details.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License
|
||||
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+. $srcdir/test-subr.sh
|
||||
+
|
||||
+# Test whether libdwfl can handle corefiles containing non-contiguous
|
||||
+# segments where multiple modules are contained within the address
|
||||
+# space of some other module.
|
||||
+
|
||||
+# testcore-noncontig was generated from the following program with
|
||||
+# systemd-coredump on RHEL 7.9 Workstation, kernel
|
||||
+# 3.10.0-1160.105.1.el7.x86_64. liblgpllibs.so was packaged with
|
||||
+# firefox-115.4.0-1.el7_9.x86_64.rpm.
|
||||
+
|
||||
+# #include <unistd.h>
|
||||
+# #include <dlfcn.h>
|
||||
+#
|
||||
+# int main () {
|
||||
+# dlopen ("/usr/lib64/firefox/liblgpllibs.so", RTLD_GLOBAL | RTLD_NOW);
|
||||
+# sleep (60);
|
||||
+# return 0;
|
||||
+# }
|
||||
+#
|
||||
+# gcc -ldl -o test test.c
|
||||
+
|
||||
+tempfiles out
|
||||
+testfiles testcore-noncontig
|
||||
+
|
||||
+testrun ${abs_builddir}/dwfl-core-noncontig testcore-noncontig
|
||||
+
|
||||
+# Remove parts of the output that could change depending on which
|
||||
+# libraries are locally installed.
|
||||
+testrun ${abs_top_builddir}/src/unstrip -n --core testcore-noncontig \
|
||||
+ | sed 's/+/ /g' | cut -d " " -f1,3 | sort > out
|
||||
+
|
||||
+testrun_compare cat out <<\EOF
|
||||
+0x400000 3a1748a544b40a38b3be3d2d13ffa34a2a5a71c0@0x400284
|
||||
+0x7f14e357e000 edf51350c7f71496149d064aa8b1441f786df88a@0x7f14e357e1d8
|
||||
+0x7f14e3794000 7615604eaf4a068dfae5085444d15c0dee93dfbd@0x7f14e37941d8
|
||||
+0x7f14e3a96000 09cfb171310110bc7ea9f4476c9fa044d85baff4@0x7f14e3a96210
|
||||
+0x7f14e3d9e000 e10cc8f2b932fc3daeda22f8dac5ebb969524e5b@0x7f14e3d9e248
|
||||
+0x7f14e3fba000 fc4fa58e47a5acc137eadb7689bce4357c557a96@0x7f14e3fba280
|
||||
+0x7f14e4388000 7f2e9cb0769d7e57bd669b485a74b537b63a57c4@0x7f14e43881d8
|
||||
+0x7f14e458c000 62c449974331341bb08dcce3859560a22af1e172@0x7f14e458c1d8
|
||||
+0x7f14e4795000 175efdcef445455872a86a6fbee7567ca16a513e@0x7f14e4795248
|
||||
+0x7ffcfe59f000 80d79b32785868a2dc10047b39a80d1daec8923d@0x7ffcfe59f328
|
||||
+EOF
|
||||
+
|
||||
+exit 0
|
||||
--
|
||||
2.43.0
|
||||
|
35
elfutils-0.186-fdo-swap.patch
Normal file
35
elfutils-0.186-fdo-swap.patch
Normal file
@ -0,0 +1,35 @@
|
||||
diff --git a/libelf/gelf_getnote.c b/libelf/gelf_getnote.c
|
||||
index 0f7b9d68..6ef970c5 100644
|
||||
--- a/libelf/gelf_getnote.c
|
||||
+++ b/libelf/gelf_getnote.c
|
||||
@@ -31,6 +31,7 @@
|
||||
#endif
|
||||
|
||||
#include <assert.h>
|
||||
+#include <byteswap.h>
|
||||
#include <gelf.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -73,6 +74,22 @@ gelf_getnote (Elf_Data *data, size_t offset, GElf_Nhdr *result,
|
||||
offset = 0;
|
||||
else
|
||||
{
|
||||
+ /* Workaround FDO package notes on big-endian systems,
|
||||
+ getting namesz and descsz wrong. Detect it by getting
|
||||
+ a bad namesz, descsz and byte swapped n_type for
|
||||
+ NT_FDO_PACKAGING_METADATA. */
|
||||
+ if (unlikely (n->n_type == bswap_32 (NT_FDO_PACKAGING_METADATA)
|
||||
+ && n->n_namesz > data->d_size
|
||||
+ && n->n_descsz > data->d_size))
|
||||
+ {
|
||||
+ /* n might not be writable, use result and redirect n. */
|
||||
+ *result = *n;
|
||||
+ result->n_type = bswap_32 (n->n_type);
|
||||
+ result->n_namesz = bswap_32 (n->n_namesz);
|
||||
+ result->n_descsz = bswap_32 (n->n_descsz);
|
||||
+ n = result;
|
||||
+ }
|
||||
+
|
||||
/* This is slightly tricky, offset is guaranteed to be 4
|
||||
byte aligned, which is what we need for the name_offset.
|
||||
And normally desc_offset is also 4 byte aligned, but not
|
36
elfutils-0.192-libelf-static.patch
Normal file
36
elfutils-0.192-libelf-static.patch
Normal file
@ -0,0 +1,36 @@
|
||||
From 0a65a54593ae489d40cb993caa74095d45bc47fd Mon Sep 17 00:00:00 2001
|
||||
From: Mark Wielaard <mark@klomp.org>
|
||||
Date: Tue, 22 Oct 2024 15:03:42 +0200
|
||||
Subject: [PATCH] libelf: Add libeu objects to libelf.a static archive
|
||||
|
||||
libelf might use some symbols from libeu.a, specifically the eu-search
|
||||
wrappers. But we don't ship libeu.a separately. So include the libeu
|
||||
objects in the libelf.a archive to facilitate static linking.
|
||||
|
||||
* libelf/Makefile.am (libeu_objects): New variable.
|
||||
(libelf_a_LIBADD): New, add libeu_objects.
|
||||
|
||||
https://sourceware.org/bugzilla/show_bug.cgi?id=32293
|
||||
|
||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
||||
---
|
||||
libelf/Makefile.am | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/libelf/Makefile.am b/libelf/Makefile.am
|
||||
index 3402863e..2d3dbdf2 100644
|
||||
--- a/libelf/Makefile.am
|
||||
+++ b/libelf/Makefile.am
|
||||
@@ -122,6 +122,9 @@ libelf.so: $(srcdir)/libelf.map $(libelf_so_LIBS) $(libelf_so_DEPS)
|
||||
@$(textrel_check)
|
||||
$(AM_V_at)ln -fs $@ $@.$(VERSION)
|
||||
|
||||
+libeu_objects = $(shell $(AR) t ../lib/libeu.a)
|
||||
+libelf_a_LIBADD = $(addprefix ../lib/,$(libeu_objects))
|
||||
+
|
||||
install: install-am libelf.so
|
||||
$(mkinstalldirs) $(DESTDIR)$(libdir)
|
||||
$(INSTALL_PROGRAM) libelf.so $(DESTDIR)$(libdir)/libelf-$(PACKAGE_VERSION).so
|
||||
--
|
||||
2.47.0
|
||||
|
35
elfutils-0.192-stacktrace-lto.patch
Normal file
35
elfutils-0.192-stacktrace-lto.patch
Normal file
@ -0,0 +1,35 @@
|
||||
commit 43829fb8780ecbe9d17aaed22d3dfcb806cb5f45
|
||||
Author: Mark Wielaard <mark@klomp.org>
|
||||
Date: Thu Oct 24 10:44:25 2024 +0200
|
||||
|
||||
stacktrace: Init elf_fd in sysprof_init_dwfl
|
||||
|
||||
When building with LTO gcc believes elf_fd can be used uninitialized:
|
||||
|
||||
In function ‘sysprof_init_dwfl’,
|
||||
inlined from ‘sysprof_unwind_cb’ at stacktrace.c:1235:16:
|
||||
stacktrace.c:1087:7: error: ‘elf_fd’ may be used uninitialized [-Werror=maybe-uninitialized]
|
||||
1087 | close (elf_fd);
|
||||
| ^
|
||||
|
||||
This code won't be reached because if find_procfile doesn't initialize
|
||||
elf_fd, it will return an error. But help the compiler by initializing
|
||||
elf_fd to -1.
|
||||
|
||||
* src/stacktrace.c (sysprof_init_dwfl): Init elf_fd to -1.
|
||||
|
||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
||||
|
||||
diff --git a/src/stacktrace.c b/src/stacktrace.c
|
||||
index 438cb1dd0d38..b912ca5de502 100644
|
||||
--- a/src/stacktrace.c
|
||||
+++ b/src/stacktrace.c
|
||||
@@ -1033,7 +1033,7 @@ sysprof_init_dwfl (struct sysprof_unwind_info *sui,
|
||||
}
|
||||
|
||||
Elf *elf = NULL;
|
||||
- int elf_fd;
|
||||
+ int elf_fd = -1;
|
||||
err = find_procfile (dwfl, &pid, &elf, &elf_fd);
|
||||
if (err < 0)
|
||||
{
|
1
elfutils-debuginfod.sysusers
Normal file
1
elfutils-debuginfod.sysusers
Normal file
@ -0,0 +1 @@
|
||||
u debuginfod - "elfutils debuginfo server" /var/cache/debuginfod -
|
@ -1,24 +1,31 @@
|
||||
# Rebuild --with static to enable static subpackages
|
||||
# This is *not* supported by elfutils maintainers
|
||||
%bcond_with static
|
||||
|
||||
Name: elfutils
|
||||
Version: 0.190
|
||||
%global baserelease 2
|
||||
Version: 0.192
|
||||
%global baserelease 4
|
||||
Release: %{baserelease}%{?dist}
|
||||
URL: http://elfutils.org/
|
||||
%global source_url ftp://sourceware.org/pub/elfutils/%{version}/
|
||||
License: GPLv3+ and (GPLv2+ or LGPLv3+) and GFDL
|
||||
License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later) AND GFDL-1.3-no-invariants-or-later
|
||||
Source: %{?source_url}%{name}-%{version}.tar.bz2
|
||||
Source1: testcore-noncontig.bz2
|
||||
Source1: elfutils-debuginfod.sysusers
|
||||
Summary: A collection of utilities and DSOs to handle ELF files and DWARF data
|
||||
|
||||
# Needed for isa specific Provides and Requires.
|
||||
%global depsuffix %{?_isa}%{!?_isa:-%{_arch}}
|
||||
|
||||
# eu-stacktrace currently only supports x86_64
|
||||
%ifarch x86_64
|
||||
%global enable_stacktrace 1
|
||||
%else
|
||||
%global enable_stacktrace 0
|
||||
%endif
|
||||
|
||||
Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
|
||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
|
||||
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
|
||||
Recommends: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
|
||||
%else
|
||||
Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
|
||||
BuildRequires: gcc
|
||||
# For libstdc++ demangle support
|
||||
@ -39,6 +46,8 @@ BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
|
||||
BuildRequires: pkgconfig(libcurl) >= 7.29.0
|
||||
BuildRequires: pkgconfig(sqlite3) >= 3.7.17
|
||||
BuildRequires: pkgconfig(libarchive) >= 3.1.2
|
||||
# For debugindod metadata query
|
||||
BuildRequires: pkgconfig(json-c) >= 0.11
|
||||
|
||||
# For tests need to bunzip2 test files.
|
||||
BuildRequires: bzip2
|
||||
@ -51,6 +60,11 @@ BuildRequires: curl
|
||||
# For run-debuginfod-response-headers.sh test case
|
||||
BuildRequires: socat
|
||||
|
||||
# For eu-stacktrace
|
||||
%if %{enable_stacktrace}
|
||||
BuildRequires: sysprof-capture-devel
|
||||
%endif
|
||||
|
||||
BuildRequires: automake
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: gettext-devel
|
||||
@ -64,9 +78,22 @@ BuildRequires: gettext-devel
|
||||
%global provide_yama_scope 1
|
||||
%endif
|
||||
|
||||
%global with_sysusers 0
|
||||
|
||||
%if 0%{?fedora} >= 32 || 0%{?rhel} >= 9
|
||||
%global with_sysusers 1
|
||||
%endif
|
||||
|
||||
# Patches
|
||||
# RHEL-18913: Fix handling of corefiles with non-contiguous segments.
|
||||
Patch1: elfutils-0.190-fix-core-noncontig.patch
|
||||
|
||||
# For s390x... FDO package notes are bogus.
|
||||
Patch1: elfutils-0.186-fdo-swap.patch
|
||||
|
||||
# Include libeu.a objects in libelf.a for static linking.
|
||||
Patch2: elfutils-0.192-libelf-static.patch
|
||||
|
||||
# Fix eu-stacktrace LTO build error.
|
||||
Patch3: elfutils-0.192-stacktrace-lto.patch
|
||||
|
||||
%description
|
||||
Elfutils is a collection of utilities, including stack (to show
|
||||
@ -78,7 +105,7 @@ elfcompress (to compress or decompress ELF sections).
|
||||
|
||||
%package libs
|
||||
Summary: Libraries to handle compiled objects
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-libs%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -101,7 +128,7 @@ libraries.
|
||||
|
||||
%package devel
|
||||
Summary: Development libraries to handle compiled objects
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-devel%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -119,22 +146,25 @@ applications for handling compiled objects. libdw provides access
|
||||
to the DWARF debugging information. libasm provides a programmable
|
||||
assembler interface.
|
||||
|
||||
%if %{with static}
|
||||
%package devel-static
|
||||
Summary: Static archives to handle compiled objects
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-devel-static%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
Requires: elfutils-devel%{depsuffix} = %{version}-%{release}
|
||||
Requires: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
|
||||
Requires: libzstd-static%{depsuffix}
|
||||
|
||||
%description devel-static
|
||||
The elfutils-devel-static package contains the static archives
|
||||
with the code to handle compiled objects.
|
||||
%endif
|
||||
|
||||
%package libelf
|
||||
Summary: Library to read and write ELF files
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-libelf%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -148,7 +178,7 @@ elfutils package use it also to generate new ELF files.
|
||||
|
||||
%package libelf-devel
|
||||
Summary: Development support for libelf
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -161,9 +191,10 @@ applications for handling compiled objects. libelf allows you to
|
||||
access the internals of the ELF object file format, so you can see the
|
||||
different sections of an ELF file.
|
||||
|
||||
%if %{with static}
|
||||
%package libelf-devel-static
|
||||
Summary: Static archive of libelf
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -172,11 +203,12 @@ Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
|
||||
%description libelf-devel-static
|
||||
The elfutils-libelf-static package contains the static archive
|
||||
for libelf.
|
||||
%endif
|
||||
|
||||
%if %{provide_yama_scope}
|
||||
%package default-yama-scope
|
||||
Summary: Default yama attach scope sysctl setting
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
Provides: default-yama-scope
|
||||
BuildArch: noarch
|
||||
# For the sysctl_apply macro we need systemd as build requires.
|
||||
@ -210,7 +242,7 @@ profiling) of processes.
|
||||
|
||||
%package debuginfod-client
|
||||
Summary: Library and command line client for build-id HTTP ELF/DWARF server
|
||||
License: GPLv3+ and (GPLv2+ or LGPLv3+)
|
||||
License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later)
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -220,7 +252,7 @@ Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
|
||||
|
||||
%package debuginfod-client-devel
|
||||
Summary: Libraries and headers to build debuginfod client applications
|
||||
License: GPLv2+ or LGPLv3+
|
||||
License: GPL-2.0-or-later OR LGPL-3.0-or-later
|
||||
%if 0%{!?_isa:1}
|
||||
Provides: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release}
|
||||
%endif
|
||||
@ -228,16 +260,23 @@ Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
|
||||
|
||||
%package debuginfod
|
||||
Summary: HTTP ELF/DWARF file server addressed by build-id
|
||||
License: GPLv3+
|
||||
License: GPL-3.0-or-later
|
||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
|
||||
Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
|
||||
Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
|
||||
BuildRequires: systemd
|
||||
%if %{with_sysusers}
|
||||
BuildRequires: systemd-rpm-macros
|
||||
%endif
|
||||
BuildRequires: make
|
||||
Requires(post): systemd
|
||||
Requires(preun): systemd
|
||||
Requires(postun): systemd
|
||||
%if %{with_sysusers}
|
||||
%{?sysusers_requires_compat}
|
||||
%else
|
||||
Requires(pre): shadow-utils
|
||||
%endif
|
||||
# To extract .deb files with a bsdtar (= libarchive) subshell
|
||||
Requires: bsdtar
|
||||
|
||||
@ -267,8 +306,6 @@ autoreconf -f -v -i
|
||||
# are executable.
|
||||
find . -name \*.sh ! -perm -0100 -print | xargs chmod +x
|
||||
|
||||
cp %{SOURCE1} tests
|
||||
|
||||
%build
|
||||
# Remove -Wall from default flags. The makefiles enable enough warnings
|
||||
# themselves, and they use -Werror. Appending -Wall defeats the cases where
|
||||
@ -280,12 +317,17 @@ RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wformat"
|
||||
|
||||
|
||||
trap 'cat config.log' EXIT
|
||||
|
||||
%if 0%{?centos} >= 8
|
||||
%configure CFLAGS="$RPM_OPT_FLAGS" --enable-debuginfod-urls=https://debuginfod.centos.org/
|
||||
%else
|
||||
%configure CFLAGS="$RPM_OPT_FLAGS"
|
||||
# dist_debuginfod_url is defined in macros.dist. Fedora and CentOS have
|
||||
# URLs pointing to their respective servers. RHEL and Amazon Linux do
|
||||
# not configure a default server.
|
||||
%configure CFLAGS="$RPM_OPT_FLAGS" \
|
||||
%if "%{?dist_debuginfod_url}"
|
||||
--enable-debuginfod-urls=%{dist_debuginfod_url} \
|
||||
%endif
|
||||
%if %{enable_stacktrace}
|
||||
--enable-stacktrace \
|
||||
%endif
|
||||
--enable-debuginfod
|
||||
trap '' EXIT
|
||||
%make_build
|
||||
|
||||
@ -293,11 +335,9 @@ trap '' EXIT
|
||||
%make_install
|
||||
|
||||
chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
|
||||
|
||||
%if 0%{?centos} < 8
|
||||
# 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
|
||||
%if %{without static}
|
||||
# We don't want the static libraries
|
||||
rm ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib{elf,dw,asm}.a
|
||||
%endif
|
||||
|
||||
%find_lang %{name}
|
||||
@ -311,13 +351,15 @@ install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysc
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod
|
||||
touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
|
||||
|
||||
%if %{with_sysusers}
|
||||
install -Dm0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/elfutils-debuginfod.conf
|
||||
%endif
|
||||
|
||||
%check
|
||||
# Record some build root versions in build.log
|
||||
uname -r; rpm -q binutils gcc glibc || true
|
||||
|
||||
# See rhbz #2060731 and #2055510. The ; true really should be ; false
|
||||
# but for some reason brew builds can cause test-suite failures.
|
||||
%make_build check || (cat tests/test-suite.log; true)
|
||||
%make_build check || (cat tests/test-suite.log; false)
|
||||
|
||||
# Only the latest Fedora and EPEL have these scriptlets,
|
||||
# older Fedora and plain RHEL don't.
|
||||
@ -344,7 +386,6 @@ fi
|
||||
%endif
|
||||
|
||||
%files
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL
|
||||
%doc README TODO CONTRIBUTING
|
||||
%{_bindir}/eu-addr2line
|
||||
@ -362,13 +403,15 @@ fi
|
||||
%{_bindir}/eu-size
|
||||
%{_bindir}/eu-srcfiles
|
||||
%{_bindir}/eu-stack
|
||||
%if %{enable_stacktrace}
|
||||
%{_bindir}/eu-stacktrace
|
||||
%endif
|
||||
%{_bindir}/eu-strings
|
||||
%{_bindir}/eu-strip
|
||||
%{_bindir}/eu-unstrip
|
||||
%{_mandir}/man1/eu-*.1*
|
||||
|
||||
%files libs
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING-GPLV2 COPYING-LGPLV3
|
||||
%{_libdir}/libasm-%{version}.so
|
||||
%{_libdir}/libdw-%{version}.so
|
||||
@ -389,12 +432,13 @@ fi
|
||||
%{_libdir}/libdw.so
|
||||
%{_libdir}/pkgconfig/libdw.pc
|
||||
|
||||
%if %{with static}
|
||||
%files devel-static
|
||||
%{_libdir}/libdw.a
|
||||
%{_libdir}/libasm.a
|
||||
%endif
|
||||
|
||||
%files -f %{name}.lang libelf
|
||||
%{!?_licensedir:%global license %%doc}
|
||||
%license COPYING-GPLV2 COPYING-LGPLV3
|
||||
%{_libdir}/libelf-%{version}.so
|
||||
%{_libdir}/libelf.so.*
|
||||
@ -406,9 +450,14 @@ fi
|
||||
%{_libdir}/libelf.so
|
||||
%{_libdir}/pkgconfig/libelf.pc
|
||||
%{_mandir}/man3/elf_*.3*
|
||||
%{_mandir}/man3/elf32_*.3*
|
||||
%{_mandir}/man3/elf64_*.3*
|
||||
%{_mandir}/man3/libelf.3*
|
||||
|
||||
%if %{with static}
|
||||
%files libelf-devel-static
|
||||
%{_libdir}/libelf.a
|
||||
%endif
|
||||
|
||||
%if %{provide_yama_scope}
|
||||
%files default-yama-scope
|
||||
@ -416,29 +465,30 @@ fi
|
||||
%endif
|
||||
|
||||
%files debuginfod-client
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libdebuginfod-%{version}.so
|
||||
%{_libdir}/libdebuginfod.so.*
|
||||
%{_bindir}/debuginfod-find
|
||||
%{_mandir}/man1/debuginfod-find.1*
|
||||
%{_mandir}/man7/debuginfod*.7*
|
||||
%if 0%{?centos} >= 8
|
||||
%{_sysconfdir}/profile.d/debuginfod.*
|
||||
%{_sysconfdir}/debuginfod/*.urls
|
||||
%config(noreplace) %{_sysconfdir}/profile.d/*
|
||||
%config(noreplace) %{_datadir}/fish/vendor_conf.d/*
|
||||
%if "%{?dist_debuginfod_url}"
|
||||
%config(noreplace) %{_sysconfdir}/debuginfod/*
|
||||
%endif
|
||||
|
||||
%files debuginfod-client-devel
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/pkgconfig/libdebuginfod.pc
|
||||
%{_mandir}/man3/debuginfod_*.3*
|
||||
%{_includedir}/elfutils/debuginfod.h
|
||||
%{_libdir}/libdebuginfod.so
|
||||
|
||||
%files debuginfod
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/debuginfod
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod
|
||||
%{_unitdir}/debuginfod.service
|
||||
%if %{with_sysusers}
|
||||
%{_sysusersdir}/elfutils-debuginfod.conf
|
||||
%endif
|
||||
%{_mandir}/man8/debuginfod*.8*
|
||||
|
||||
|
||||
@ -446,11 +496,15 @@ fi
|
||||
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
|
||||
|
||||
%pre debuginfod
|
||||
%if %{with_sysusers}
|
||||
%sysusers_create_compat %{SOURCE1}
|
||||
%else
|
||||
getent group debuginfod >/dev/null || groupadd -r debuginfod
|
||||
getent passwd debuginfod >/dev/null || \
|
||||
useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \
|
||||
-c "elfutils debuginfo server" debuginfod
|
||||
exit 0
|
||||
%endif
|
||||
|
||||
%post debuginfod
|
||||
%systemd_post debuginfod.service
|
||||
@ -459,37 +513,139 @@ exit 0
|
||||
%systemd_postun_with_restart debuginfod.service
|
||||
|
||||
%changelog
|
||||
* Fri Dec 8 2023 Aaron Merey <amerey@redhat.com> - 0.190-2
|
||||
* Tue Oct 29 2024 Aaron Merey <amerey@redhat.com> - 0.192-4
|
||||
- Install fish profile script unconditionally
|
||||
|
||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 0.192-3
|
||||
- Bump release for October 2024 mass rebuild:
|
||||
Resolves: RHEL-64018
|
||||
|
||||
* Thu Oct 24 2024 Aaron Merey <amerey@redhat.com> - 0.192-2
|
||||
- Enable eu-stacktrace on x86_64
|
||||
- Add elfutils-0.192-stacktrace-lto.patch
|
||||
|
||||
* Wed Oct 23 2024 Aaron Merey <amerey@redhat.com> - 0.192-1
|
||||
- Upgrade to upstream elfutils 0.192
|
||||
- Drop upstreamed patches
|
||||
elfutils-0.190-riscv-flatten.patch
|
||||
elfutils-0.191-riscv-flatten.patch
|
||||
elfutils-0.191-profile-empty-urls.patch
|
||||
- Add elfutils-0.192-libelf-static.patch
|
||||
|
||||
* Tue Jun 25 2024 Mark Wielaard <mjw@fedoraproject.org> - 0.191-5
|
||||
- Add elfutils-0.190-riscv-flatten.patch
|
||||
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 0.191-4
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
* Wed Apr 24 2024 Aaron Merey <amerey@redhat.com> - 0.191-3
|
||||
- eu-srcfiles directly links to libdebuginfod.so so explicitly
|
||||
Require elfutils-debuginfod-client not just Recommends
|
||||
|
||||
* Wed Apr 24 2024 Aaron Merey <amerey@redhat.com> - 0.191-2
|
||||
- Update SPDX licenses
|
||||
|
||||
* Thu Apr 11 2024 Aaron Merey <amerey@redhat.com> - 0.191-1
|
||||
- Upgrade to upstream elfutils 0.191
|
||||
- Drop upstreamed patches
|
||||
elfutils-0.190-fix-core-noncontig.patch
|
||||
elfutils-0.190-gcc-14.patch
|
||||
elfutils-0.190-remove-ET_REL-unstrip-test.patch
|
||||
- Drop testcore-noncontig.bz2
|
||||
- Add elfutils-0.191-profile-empty-urls.patch
|
||||
- Add elfutils-0.191-riscv-flatten.patch
|
||||
- Add feature flag for reenabling elfutils-libelf-devel-static and elfutils-devel-static
|
||||
|
||||
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.190-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.190-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Tue Nov 28 2023 Aaron Merey <amerey@fedoraproject.org> - 0.190-4
|
||||
- Add elfutils-0.190-remove-ET_REL-unstrip-test.patch
|
||||
|
||||
* Fri Nov 24 2023 Aaron Merey <amerey@fedoraproject.org> - 0.190-3
|
||||
- Add elfutils-0.190-fix-core-noncontig.patch
|
||||
|
||||
* Fri Nov 3 2023 Mark Wielaard <mjw@redhat.com> - 0.190-1
|
||||
* Fri Nov 3 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.190-2
|
||||
- Update Fedora license tags to spdx license tags
|
||||
|
||||
* Fri Nov 3 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.190-1
|
||||
- Upgrade to upstream elfutils 0.190
|
||||
- Add eu-srcfiles
|
||||
- Drop upstreamed patches
|
||||
elfutils-0.189-relr.patch
|
||||
elfutils-0.189-debuginfod_config_cache-double-close.patch
|
||||
elfutils-0.189-elf_getdata_rawchunk.patch
|
||||
elfutils-0.189-elfcompress.patch
|
||||
elfutils-0.189-c99-compat.patch
|
||||
- Only package debuginfod-client-config.7 manpage for debuginfod-client
|
||||
|
||||
* Wed Jun 28 2023 Mark Wielaard <mjw@redhat.com> - 0.189-3
|
||||
* Thu Aug 24 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.189-6
|
||||
- Update elfutils-0.189-relr.patch
|
||||
|
||||
* Wed Aug 23 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.189-5
|
||||
- Add elfutils-0.189-relr.patch
|
||||
|
||||
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.189-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Thu Jun 22 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.189-3
|
||||
- Add elfutils-0.189-elf_getdata_rawchunk.patch
|
||||
- Add elfutils-0.189-debuginfod_config_cache-double-close.patch
|
||||
|
||||
* Mon Apr 24 2023 Mark Wielaard <mjw@redhat.com> - 0.189-2
|
||||
* Sat Apr 22 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.189-2
|
||||
- Add elfutils-0.189-c99-compat.patch
|
||||
- Add elfutils-0.189-elfcompress.patch
|
||||
|
||||
* Tue Apr 4 2023 Mark Wielaard <mjw@redhat.com> - 0.189-1
|
||||
* Fri Mar 3 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.189-1
|
||||
- Upgrade to upsteam elfutils 0.189.
|
||||
|
||||
* Mon Nov 7 2022 Mark Wielaard <mjw@redhat.com> - 0.188-3
|
||||
* Fri Jan 27 2023 Mark Wielaard <mjw@fedoraproject.org> - 0.188-5
|
||||
- Add elfutils-0.188-deprecated-CURLINFO.patch,
|
||||
elfutils-0.188-CURL_AT_LEAST_VERSION.patch and
|
||||
elfutils-0.188-CURLOPT_PROTOCOLS_STR.patch
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.188-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Mon Nov 7 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.188-3
|
||||
- Add elfutils-0.188-compile-warnings.patch
|
||||
- Add elfutils-0.188-debuginfod-client-lifetime.patch
|
||||
|
||||
* Wed Nov 2 2022 Mark Wielaard <mjw@redhat.com> - 0.188-1
|
||||
- Upgrade to upsteam elfutils 0.188.
|
||||
* Wed Nov 2 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.188-2
|
||||
- Add elfutils-0.188-static-extract_section.patch.
|
||||
|
||||
* Fri May 6 2022 Mark Wielaard <mjw@redhat.com> - 0.187-4
|
||||
* Wed Nov 2 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.188-1
|
||||
- Upgrade to upsteam elfutils 0.188.
|
||||
|
||||
* Wed Oct 5 2022 Amit Shah <amitshah@fedoraproject.org> - 0.187-9
|
||||
- Auto-configure debuginfod_url based on macros.dist
|
||||
|
||||
* Wed Aug 24 2022 Debarshi Ray <rishi@fedoraproject.org> - 0.187-8
|
||||
- Use %%sysusers_requires_compat to match %%sysusers_create_compat
|
||||
|
||||
* Wed Jul 27 2022 Amit Shah <amitshah@fedoraproject.org> - 0.187-7
|
||||
- Allow building without default debuginfod URL
|
||||
|
||||
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.187-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Tue Jun 14 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.187-5
|
||||
- Add sysuser support for creating the debuginfod user
|
||||
|
||||
* Fri May 6 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.187-4
|
||||
- Add elfutils-0.187-mhd_no_dual_stack.patch
|
||||
- Add elfutils-0.187-mhd_epoll.patch
|
||||
|
||||
* Thu May 5 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.187-3
|
||||
- Add elfutils-0.187-debuginfod-client-fd-leak.patch
|
||||
|
||||
* Tue May 3 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.187-2
|
||||
- Add elfutils-0.187-csh-profile.patch
|
||||
|
||||
* Tue Apr 26 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.187-1
|
||||
- Upgrade to elfutils 0.187
|
||||
- debuginfod: Support -C option for connection thread pooling.
|
||||
- debuginfod-client: Negative cache file are now zero sized instead
|
||||
@ -503,18 +659,26 @@ exit 0
|
||||
DEBUGINFOD_URLS is unset. And whenDEBUGINFOD_URLS is set,
|
||||
libcurl is only loaded when the debuginfod_begin function is
|
||||
called.
|
||||
- Add elfutils-0.187-csh-profile.patch
|
||||
- Add elfutils-0.187-debuginfod-client-fd-leak.patch
|
||||
- Add elfutils-0.187-mhd_no_dual_stack.patch
|
||||
- Add elfutils-0.187-mhd_epoll.patch
|
||||
|
||||
* Tue Apr 12 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.186-5
|
||||
- Add an explicit versioned requires from elfutils-debuginfod-client
|
||||
on elfutils-libs and elfutils-libelf.
|
||||
- Remove brew testsuite workarounds
|
||||
on elfutils-libelf.
|
||||
|
||||
* Thu Feb 10 2022 Frank Ch. Eigler <fche@redhat.com> - 0.186-2
|
||||
- rhbz2052574: enable debuginfod.centos.org support by default
|
||||
* Thu Apr 7 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.186-4
|
||||
- Add an explicit versioned requires from elfutils-debuginfod-client
|
||||
on elfutils-libs.
|
||||
|
||||
* Thu Nov 11 2021 Mark Wielaard <mjw@redhat.com> - 0.186-1
|
||||
* Fri Mar 25 2022 Mark Wielaard <mjw@fedoraproject.org> - 0.186-3
|
||||
- Add elfutils-0.186-elf-glibc.patch
|
||||
- Add elfutils-0.186-fdo-ebl.patch
|
||||
- Add elfutils-0.186-fdo-efllint.patch
|
||||
- Add elfutils-0.186-fdo-swap.patch
|
||||
- Add elfutils-0.186-ppc64le-error-return-workaround.patch
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.186-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Nov 10 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.186-1
|
||||
- Upgrade to upstream 0.186
|
||||
- debuginfod-client: Default $DEBUGINFOD_URLS is computed from
|
||||
drop-in files /etc/debuginfod/*.urls rather than
|
||||
@ -538,16 +702,80 @@ exit 0
|
||||
dwarf_linefunctionname.
|
||||
- translations: Update Japanese translation.
|
||||
|
||||
* Thu May 27 2021 Mark Wielaard <mjw@redhat.com> - 0.185-1
|
||||
- Upgrade to upstream 0.185
|
||||
* Thu Aug 5 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.185-5
|
||||
- Use autosetup
|
||||
- Add elfutils-0.185-raise-pthread_kill-backtrace.patch
|
||||
|
||||
* Thu Dec 17 2020 Mark Wielaard <mjw@redhat.com> - 0.182-3
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.185-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Thu Jul 15 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.185-3
|
||||
- Update version to 0.185-3 for rawhide/f35 upgrade from f34
|
||||
This build enables debuginfod client by default
|
||||
- Workaround bad test in make check
|
||||
|
||||
* Wed May 26 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.185-1
|
||||
- Upgrade to upstream 0.185
|
||||
- debuginfod-client: Simplify curl handle reuse so downloads which
|
||||
return an error are retried.
|
||||
- elfcompress: Always exit with code 0 when the operation succeeds
|
||||
(even when nothing was done). On error the exit code
|
||||
is now always 1.
|
||||
|
||||
* Sun May 16 2021 Frank Ch. Eigler <fche@redhat.com> - 0.184-5
|
||||
- Fix 404-latch problem on reused debuginfod_client. (PR27859)
|
||||
|
||||
* Wed May 12 2021 Frank Ch. Eigler <fche@redhat.com> - 0.184-4
|
||||
- Ship new profile.d files. (1956952)
|
||||
|
||||
* Wed May 12 2021 Frank Ch. Eigler <fche@redhat.com> - 0.184-3
|
||||
- Don't nuke the new profile.d files. (1956952)
|
||||
|
||||
* Tue May 11 2021 Frank Ch. Eigler <fche@redhat.com> - 0.184-2
|
||||
- Activate debuginfod client by default (1956952) to the fedora server.
|
||||
|
||||
* Mon May 10 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.184-1
|
||||
- Upgrade to upstream 0.184
|
||||
- debuginfod: Use libarchive's bsdtar as the .deb-family file unpacker.
|
||||
- debuginfod-client: Client caches negative results. If a query for a
|
||||
file failed with 404, an empty 000 permission
|
||||
file is created in the cache. This will prevent
|
||||
requesting the same file for the next 10 minutes.
|
||||
Client objects now carry long-lived curl handles
|
||||
for outgoing connections. This makes it more
|
||||
efficient for multiple sequential queries, because
|
||||
the TCP connections and/or TLS state info are kept
|
||||
around awhile, avoiding O(100ms) setup latencies.
|
||||
- libdw: handle DW_FORM_indirect when reading attributes
|
||||
- translations: Update Polish translation.
|
||||
|
||||
* Mon Apr 19 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.183-3
|
||||
- Introduce CI gating setup
|
||||
|
||||
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.183-2
|
||||
- Rebuilt for updated systemd-rpm-macros
|
||||
See https://pagure.io/fesco/issue/2583.
|
||||
|
||||
* Mon Feb 8 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.183-1
|
||||
- Upgrade to upstream 0.183
|
||||
- debuginfod: New thread-busy metric and more detailed error metrics.
|
||||
New --fdcache-mintmp and tracking of filesystem freespace.
|
||||
- debuginfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h can
|
||||
be used to dlopen the libdebuginfod.so library.
|
||||
New function debuginfod_set_verbose_fd and DEBUGINFOD_VERBOSE
|
||||
environment variable.
|
||||
- config: profile.sh and profile.csh won't export DEBUGINFOD_URLS
|
||||
unless configured --enable-debuginfod-urls[=URLS]
|
||||
- elflint, readelf: Recognize SHF_GNU_RETAIN.
|
||||
Handle SHT_X86_64_UNWIND as valid relocation target type.
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.182-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Thu Dec 17 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.182-2
|
||||
- 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
|
||||
* Sat Oct 31 2020 Mark Wielaard <mjw@fedoraproject.org> - 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.
|
||||
@ -557,26 +785,131 @@ exit 0
|
||||
- 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.
|
||||
* Mon Oct 19 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-3
|
||||
- Add elfutils-0.181-array-param.patch.
|
||||
|
||||
* Fri Jan 10 2020 Mark Wielaard <mjw@redhat.com> - 0.178-7
|
||||
* Fri Sep 18 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-2
|
||||
- Add ZSTD support elfutils-0.181-zstd.patch.
|
||||
|
||||
* Tue Sep 8 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-1
|
||||
- Upgrade to upstream 0.181
|
||||
- libelf: elf_update now compensates (fixes up) a bad sh_addralign
|
||||
for SHF_COMPRESSED sections.
|
||||
- libdebuginfod: configure now takes --enable-libdebuginfod=dummy or
|
||||
--disable-libdebuginfod for bootstrapping.
|
||||
DEBUGINFOD_URLS now accepts "scheme-free" urls
|
||||
(guessing at what the user meant, either http:// or file://)
|
||||
- readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and
|
||||
gnu property notes.
|
||||
- libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows
|
||||
unwinding on arm64 for code that is compiled for PAC
|
||||
(Pointer Authentication Code) as long as it isn't enabled.
|
||||
|
||||
* Tue Aug 25 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-7
|
||||
- Add elfutils-0.180-shf-compressed.patch
|
||||
|
||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.180-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Wed Jul 22 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-5
|
||||
- Remove elfutils-libelf-devel-static and elfutils-devel-static subpackages.
|
||||
- Remove duplicate listing of sysconfig/debuginfod (config) file.
|
||||
|
||||
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 0.180-4
|
||||
- Use make macros
|
||||
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
||||
|
||||
* Fri Jul 3 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-3
|
||||
- Add elfutils-0.180-mhd-result.patch
|
||||
|
||||
* Wed Jul 1 2020 Jeff Law <law@redhat.com> - 0.180-2
|
||||
- Disable LTO
|
||||
|
||||
* Thu Jun 11 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-1
|
||||
- New upstream release.
|
||||
elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given.
|
||||
libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix.
|
||||
libdw: Use correct CU to resolve file names in dwarf_decl_file.
|
||||
libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo.
|
||||
size: Also obey radix printing for bsd format.
|
||||
nm: Explicitly print weak 'V' or 'T' and common 'C' symbols.
|
||||
|
||||
* Thu Apr 30 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.179-2
|
||||
- Add elfutils-0.179-debug-client-alt-link.patch
|
||||
|
||||
* Mon Mar 30 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.179-1
|
||||
- New upstream release.
|
||||
debuginfod-client:
|
||||
- When DEBUGINFOD_PROGRESS is set and the program doesn't
|
||||
install its own debuginfod_progressfn_t show download
|
||||
progress on stderr.
|
||||
- DEBUGINFOD_TIMEOUT is now defined as seconds to get at
|
||||
least 100K, defaults to 90 seconds.
|
||||
- Default to $XDG_CACHE_HOME/debuginfod_client.
|
||||
- New functions debuginfod_set_user_data,
|
||||
debuginfod_get_user_data, debuginfod_get_url and
|
||||
debuginfod_add_http_header.
|
||||
- Support for file:// URLs.
|
||||
|
||||
debuginfod:
|
||||
- Performance improvements through highly parallelized scanning
|
||||
and archive content caching.
|
||||
- Uses libarchive directly for reading rpm archives.
|
||||
- Support for indexing .deb/.ddeb archives through dpkg-deb
|
||||
or bsdtar.
|
||||
- Generic archive support through -Z EXT[=CMD]. Which can be
|
||||
used for example for arch-linux pacman files by using
|
||||
-Z '.tar.zst=zstdcat'.
|
||||
- Better logging using User-Agent and X-Forwarded-For headers.
|
||||
- More prometheus metrics.
|
||||
- Support for eliding dots or extraneous slashes in path names.
|
||||
|
||||
debuginfod-find:
|
||||
- Accept /path/names in place of buildid hex.
|
||||
|
||||
libelf:
|
||||
- Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached
|
||||
- Ensure zlib resource cleanup on failure.
|
||||
|
||||
libdwfl:
|
||||
- dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline
|
||||
now find and handle a compressed vmlinuz image.
|
||||
|
||||
readelf, elflint:
|
||||
- Handle PT_GNU_PROPERTY.
|
||||
|
||||
translations:
|
||||
- Updated Ukrainian translation.
|
||||
|
||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.178-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Fri Jan 24 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.178-8
|
||||
- Add elfutils-0.178-gcc10-null-dereference.patch
|
||||
|
||||
* Fri Jan 10 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.178-7
|
||||
- Add elfutils-0.178-debuginfod-timeoutprogress.patch
|
||||
- Add elfutils-0.178-libasm-ebl.patch
|
||||
|
||||
* Fri Dec 13 2019 Mark Wielaard <mjw@redhat.com> - 0.178-6
|
||||
* Wed Dec 11 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-6
|
||||
- Add elfutils-0.178-curl-code-gcc-10.patch
|
||||
- Add elfutils-0.178-compressed-vmlinuz.patch
|
||||
|
||||
* Mon Dec 9 2019 Mark Wielaard <mjw@redhat.com> - 0.178-5
|
||||
- Add elfutils-0.178-debuginfod-no-cache.patch. #1781097
|
||||
* Mon Dec 9 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-5
|
||||
- Add elfutils-0.178-debuginfod-no-cache.patch.
|
||||
|
||||
* Thu Nov 28 2019 Mark Wielaard <mjw@redhat.com> - 0.178-4
|
||||
* Thu Nov 28 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-4
|
||||
- Define %%{depsuffix} before use.
|
||||
|
||||
* Thu Nov 28 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-3
|
||||
- Add elfutils-debuginfod-client Provides and Requires with depsuffix
|
||||
to get multilib dependencies correct. Add %%{version}-%%{release} to
|
||||
keep subpackages in sync.
|
||||
|
||||
* Tue Nov 26 2019 Mark Wielaard <mjw@redhat.com> - 0.178-2
|
||||
* Wed Nov 27 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-2
|
||||
- Fix libdebuginfod file list for debuginfo-client[-devel].
|
||||
|
||||
* Tue Nov 26 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-1
|
||||
- New upstream release.
|
||||
- debuginfod: New server, client tool and library to index and fetch
|
||||
ELF/DWARF files addressed by build-id through HTTP.
|
||||
@ -591,52 +924,79 @@ exit 0
|
||||
threads through the same Dwarf handle.
|
||||
- libdwfl: Will try to use debuginfod when installed as fallback to
|
||||
retrieve ELF and DWARF debug data files by build-id.
|
||||
- Fix libdebuginfod file list for debuginfo-client[-devel].
|
||||
|
||||
* Fri Jul 5 2019 Mark Wielaard <mjw@redhat.com> - 0.176-5
|
||||
* Wed Aug 14 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.177-1
|
||||
- New upstream release.
|
||||
- elfclassify: New tool to analyze ELF objects.
|
||||
- readelf: Print DW_AT_data_member_location as decimal offset.
|
||||
Decode DW_AT_discr_list block attributes.
|
||||
- libdw: Add DW_AT_GNU_numerator, DW_AT_GNU_denominator and DW_AT_GNU_bias.
|
||||
- libdwelf: Add dwelf_elf_e_machine_string.
|
||||
dwelf_elf_begin now only returns NULL when there is an error
|
||||
reading or decompressing a file. If the file is not an ELF file
|
||||
an ELF handle of type ELF_K_NONE is returned.
|
||||
- backends: Add support for C-SKY.
|
||||
|
||||
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.176-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Fri Jul 5 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-4
|
||||
- Add elfutils-0.176-strip-symbols-illformed.patch
|
||||
|
||||
* Wed Jun 5 2019 Mark Wielaard <mjw@redhat.com> - 0.176-4
|
||||
- Add elfutils-0.176-elf-update.patch (#1717349)
|
||||
* Mon Jun 3 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-3
|
||||
- Add elfutils-0.176-elf-update.patch
|
||||
|
||||
* Mon May 13 2019 Mark Wielaard <mjw@redhat.com> - 0.176-3
|
||||
- Rebuilt for annobin change.
|
||||
* Tue Apr 30 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-2
|
||||
- Update elfutils-0.176-gcc-pr88835.patch.
|
||||
- Add elfutils-0.176-pt-gnu-prop.patch
|
||||
- Add elfutils-0.176-xlate-note.patch
|
||||
|
||||
* Fri May 10 2019 Mark Wielaard <mjw@redhat.com> - 0.176-2
|
||||
- Add elfutils-0.176-xlate-note.patch (#1705138)
|
||||
|
||||
* Tue May 7 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-1
|
||||
* Fri Feb 15 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-1
|
||||
- New upstream release.
|
||||
- backends: riscv improved core file and return value location support.
|
||||
- Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150,
|
||||
CVE-2019-7664, CVE-2019-7665.
|
||||
|
||||
* Mon Dec 3 2018 Mark Wielaard <mjw@redhat.com> - 0.174-6
|
||||
- Add elfutils-0.174-gnu-props-32.patch.
|
||||
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.175-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Thu Nov 15 2018 Mark Wielaard <mjw@redhat.com> - 0.174-5
|
||||
- Add elfutils-0.174-x86_64_unwind.patch (#1650114).
|
||||
- Add elfutils-0.174-gnu-property-note.patch (#1650120).
|
||||
* Mon Dec 3 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.175-2
|
||||
- Add elfutils-0.175-gnu-props-32.patch.
|
||||
|
||||
* Fri Nov 16 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.175-1
|
||||
- New upstream release.
|
||||
- readelf: Handle multiple .debug_macro sections.
|
||||
- strip: Add strip --reloc-debug-sections-only option.
|
||||
Handle relocations against GNU compressed sections.
|
||||
- libdwelf: New function dwelf_elf_begin.
|
||||
- libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT
|
||||
and BPF_JSLE.
|
||||
- backends: RISCV handles ADD/SUB relocations.
|
||||
- Remove all patches.
|
||||
|
||||
* Wed Nov 14 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-5
|
||||
- Add elfutils-0.174-x86_64_unwind.patch.
|
||||
- Add elfutils-0.174-gnu-property-note.patch.
|
||||
- Add elfutils-0.174-version-note.patch.
|
||||
- Add elfutils-0.174-gnu-attribute-note.patch (#1650125).
|
||||
- Add elfutils-0.174-gnu-attribute-note.patch
|
||||
|
||||
* Tue Nov 6 2018 Mark Wielaard <mjw@redhat.com> - 0.174-4
|
||||
* Tue Nov 6 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-4
|
||||
- Add elfutils-0.174-size-rec-ar.patch
|
||||
CVE-2018-18520 (#1646479)
|
||||
CVE-2018-18520 (#1646478)
|
||||
- Add elfutils-0.174-ar-sh_entsize-zero.patch
|
||||
CVE-2018-18521 (#1646484)
|
||||
CVE-2018-18521 (#1646483)
|
||||
|
||||
* Fri Nov 2 2018 Mark Wielaard <mjw@redhat.com> - 0.174-3
|
||||
* Fri Nov 2 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-3
|
||||
- Add elfutils-0.174-libdwfl-sanity-check-core-reads.patch
|
||||
CVE-2018-18310 (#1642606)
|
||||
CVE-2018-18310 (#1642605)
|
||||
|
||||
* Fri Oct 19 2018 Mark Wielaard <mjw@redhat.com> - 0.174-2
|
||||
- Add elfutils-0.174-strip-unstrip-group.patch (#1638248).
|
||||
* Wed Oct 17 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-2
|
||||
- Add elfutils-0.174-strip-unstrip-group.patch.
|
||||
|
||||
* Tue Sep 18 2018 Mark Wielaard <mjw@redhat.com> - 0.174-1
|
||||
- New upstream release (#1614972)
|
||||
* Fri Sep 14 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-1
|
||||
- New upstream release
|
||||
- libelf, libdw and all tools now handle extended shnum and shstrndx
|
||||
correctly
|
||||
correctly (#1608390).
|
||||
- elfcompress: Don't rewrite input file if no section data needs
|
||||
updating. Try harder to keep same file mode bits (suid) on rewrite.
|
||||
- strip: Handle mixed (out of order) allocated/non-allocated sections.
|
||||
@ -644,9 +1004,9 @@ exit 0
|
||||
- backends: RISCV and M68K now have backend implementations to
|
||||
generate CFI based backtraces.
|
||||
- Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403
|
||||
(#1623754, #1625052, #1625057).
|
||||
(#1623753, #1625051, #1625056).
|
||||
|
||||
* Mon Jul 30 2018 Florian Weimer <fweimer@redhat.com> - 0.173-8
|
||||
* Tue Jul 31 2018 Florian Weimer <fweimer@redhat.com> - 0.173-8
|
||||
- Rebuild with fixed binutils
|
||||
|
||||
* Sun Jul 29 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.173-7
|
14
gating.yaml
Normal file
14
gating.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_stable
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-9
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
6
plans/ci.fmf
Normal file
6
plans/ci.fmf
Normal file
@ -0,0 +1,6 @@
|
||||
summary: CI Gating Plan
|
||||
discover:
|
||||
how: fmf
|
||||
directory: tests
|
||||
execute:
|
||||
how: tmt
|
1
sources
Normal file
1
sources
Normal file
@ -0,0 +1 @@
|
||||
SHA512 (elfutils-0.192.tar.bz2) = 543188f5f2cfe5bc7955a878416c5f252edff9926754e5de0c6c57b132f21d9285c9b29e41281e93baad11d4ae7efbbf93580c114579c182103565fe99bd3909
|
65
tests/Regression/GNU-Attribute-notes-not-recognized/Makefile
Normal file
65
tests/Regression/GNU-Attribute-notes-not-recognized/Makefile
Normal file
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
||||
# Description: GNU-Attribute-notes-not-recognized
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: GNU-Attribute-notes-not-recognized" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Requires: bash bash-debuginfo" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1650125" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHEL6 -RHEL7 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
||||
Description: GNU-Attribute-notes-not-recognized
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: elfutils doesn't recognize GNU Attribute notes
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650125
|
16
tests/Regression/GNU-Attribute-notes-not-recognized/main.fmf
Normal file
16
tests/Regression/GNU-Attribute-notes-not-recognized/main.fmf
Normal file
@ -0,0 +1,16 @@
|
||||
summary: GNU-Attribute-notes-not-recognized
|
||||
description: |
|
||||
Bug summary: elfutils doesn't recognize GNU Attribute notes
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650125
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- bash
|
||||
- bash-debuginfo
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
||||
extra-task: /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
66
tests/Regression/GNU-Attribute-notes-not-recognized/runtest.sh
Executable file
66
tests/Regression/GNU-Attribute-notes-not-recognized/runtest.sh
Executable file
@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/GNU-Attribute-notes-not-recognized
|
||||
# Description: GNU-Attribute-notes-not-recognized
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
# Rely on that /bin/bash is annobin-annotated per
|
||||
# - https://fedoraproject.org/wiki/Toolchain/Watermark
|
||||
# - https://fedoraproject.org/wiki/Changes/Annobin
|
||||
# Seems to work fine with bash-4.4.19-6.el8 and elfutils-0.174-5.el8.
|
||||
f="/bin/bash"
|
||||
|
||||
# Annobin notes originally used to reside in the binary itself.
|
||||
# Later on they moved to debuginfo.
|
||||
# Let's see if we can chase down needed debuginfo somewhere...
|
||||
|
||||
# Attempt getting the needed file using debuginfod
|
||||
export DEBUGINFOD_URLS=https://debuginfod.fedoraproject.org/
|
||||
rlRun "f=\"$f $(debuginfod-find debuginfo /bin/bash)\""
|
||||
|
||||
# Attempt getting the needed file by traditional means
|
||||
rlRun "debuginfo-install -y bash"
|
||||
rlRun "buildid=$(eu-readelf -n /bin/bash | awk '/Build ID:/ {print $NF}')"
|
||||
for i in $(rpm -ql bash-debuginfo); do
|
||||
test -f $i || continue
|
||||
if eu-readelf -n $i | fgrep $buildid; then
|
||||
rlRun "f=\"$f $i\""
|
||||
fi
|
||||
done
|
||||
|
||||
set -o pipefail
|
||||
export f
|
||||
# Check if eu-readelf can read the notes from at least one of files
|
||||
# that can possibly contain it...
|
||||
rlRun "(for i in $f; do eu-readelf -n $i; done ) | grep -2 '^ GA' | fgrep 'GNU Build Attribute' | tail -50"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
||||
# Description: Test for BZ#1674430 (RFE support reading compressed ELF objects)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#1674430 (RFE support reading compressed ELF objects)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1674430" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
||||
Description: Test for BZ#1674430 (RFE support reading compressed ELF objects)
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: RFE: support reading compressed ELF objects
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1674430
|
@ -0,0 +1,15 @@
|
||||
summary: Test for BZ#1674430 (RFE support reading compressed ELF objects)
|
||||
description: |
|
||||
Bug summary: RFE: support reading compressed ELF objects
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1674430
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
||||
extra-task: /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
44
tests/Regression/RFE-support-reading-compressed-ELF-objects/runtest.sh
Executable file
44
tests/Regression/RFE-support-reading-compressed-ELF-objects/runtest.sh
Executable file
@ -0,0 +1,44 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/RFE-support-reading-compressed-ELF-objects
|
||||
# Description: Test for BZ#1674430 (RFE support reading compressed ELF objects)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
KOXZS_TO_TEST=20
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
# Look to see that dwelf_elf_begin is now in libdw.so
|
||||
rlRun "eu-nm -D $(ldd $(which eu-readelf) | awk '/libdw.so/ {print $3}') | fgrep 'dwelf_elf_begin'"
|
||||
# Also eu-readelf now takes advantage of dwelf_elf_begin() to directly read compressed ELF files.
|
||||
for koxz in $(find /usr/lib/modules/ | fgrep '.ko.xz' | shuf -n $KOXZS_TO_TEST); do
|
||||
rlRun "eu-readelf -n $koxz"
|
||||
done
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
||||
# Description: SHT_X86_64_UNWIND-section-not-recognized
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE m.o
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: SHT_X86_64_UNWIND-section-not-recognized" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1650114" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHEL6 -RHEL7 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
||||
Description: SHT_X86_64_UNWIND-section-not-recognized
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: elfutils doesn't recognize gold linker SHT_X86_64_UNWIND section
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650114
|
BIN
tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/m.o
Normal file
BIN
tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/m.o
Normal file
Binary file not shown.
@ -0,0 +1,15 @@
|
||||
summary: SHT_X86_64_UNWIND-section-not-recognized
|
||||
description: |
|
||||
Bug summary: elfutils doesn't recognize gold linker SHT_X86_64_UNWIND section
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1650114
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
||||
extra-task: /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
39
tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/runtest.sh
Executable file
39
tests/Regression/SHT_X86_64_UNWIND-section-not-recognized/runtest.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/SHT_X86_64_UNWIND-section-not-recognized
|
||||
# Description: SHT_X86_64_UNWIND-section-not-recognized
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
set -o pipefail
|
||||
rlRun "eu-readelf -S m.o | fgrep .eh_frame | fgrep X86_64_UNWIND"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,63 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
||||
# Description: abrt-faf-elfutils-IO-default-xsputn
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2015 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE eu-readelf-n-crash.core.xz
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: abrt-faf-elfutils-IO-default-xsputn" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils xz" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1262839" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
||||
Description: abrt-faf-elfutils-IO-default-xsputn
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: [abrt] [faf] elfutils: _IO_default_xsputn(): /usr/bin/eu-readelf killed by 11
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1262839
|
Binary file not shown.
@ -0,0 +1,16 @@
|
||||
summary: abrt-faf-elfutils-IO-default-xsputn
|
||||
description: |
|
||||
Bug summary: [abrt] [faf] elfutils: _IO_default_xsputn(): /usr/bin/eu-readelf killed by 11
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1262839
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- xz
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
||||
extra-task: /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
48
tests/Regression/abrt-faf-elfutils-IO-default-xsputn/runtest.sh
Executable file
48
tests/Regression/abrt-faf-elfutils-IO-default-xsputn/runtest.sh
Executable file
@ -0,0 +1,48 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/abrt-faf-elfutils-IO-default-xsputn
|
||||
# Description: abrt-faf-elfutils-IO-default-xsputn
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2015 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlRun "TMPD=$(mktemp -d)"
|
||||
rlRun "cp eu-readelf-n-crash.core.xz $TMPD/"
|
||||
rlRun "pushd $TMPD"
|
||||
rlRun "unxz eu-readelf-n-crash.core.xz"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "eu-readelf -n ./eu-readelf-n-crash.core"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TMPD"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
65
tests/Regression/add-ppc64-fallback-unwinder/Makefile
Normal file
65
tests/Regression/add-ppc64-fallback-unwinder/Makefile
Normal file
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
||||
# Description: add-ppc64-fallback-unwinder
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE backtrace.ppc64le.fp.core.bz2 backtrace.ppc64le.fp.exec.bz2 output.ref
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: add-ppc64-fallback-unwinder" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 10m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Requires: bzip2" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1454754" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
5
tests/Regression/add-ppc64-fallback-unwinder/PURPOSE
Normal file
5
tests/Regression/add-ppc64-fallback-unwinder/PURPOSE
Normal file
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
||||
Description: add-ppc64-fallback-unwinder
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: Add ppc64 fallback unwinder to elfutils libdw
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1454754
|
Binary file not shown.
Binary file not shown.
16
tests/Regression/add-ppc64-fallback-unwinder/main.fmf
Normal file
16
tests/Regression/add-ppc64-fallback-unwinder/main.fmf
Normal file
@ -0,0 +1,16 @@
|
||||
summary: add-ppc64-fallback-unwinder
|
||||
description: |
|
||||
Bug summary: Add ppc64 fallback unwinder to elfutils libdw
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1454754
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- bzip2
|
||||
duration: 10m
|
||||
extra-summary: /tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
||||
extra-task: /tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
17
tests/Regression/add-ppc64-fallback-unwinder/output.ref
Normal file
17
tests/Regression/add-ppc64-fallback-unwinder/output.ref
Normal file
@ -0,0 +1,17 @@
|
||||
PID 23727 - core
|
||||
TID 23728:
|
||||
#0 0x00000000100104bc raise
|
||||
#1 0x0000000010002a1c sigusr2
|
||||
#2 0x0000000010002a1c sigusr2
|
||||
#3 0x0000000010002b38 stdarg
|
||||
#4 0x0000000010002bc4 backtracegen
|
||||
#5 0x0000000010002bf0 start
|
||||
#6 0x0000000010004c28 start_thread
|
||||
eu-stack: dwfl_thread_getframes tid 23728 at 0x10004c27 in /root/mjw/elfutils/tests/backtrace.ppc64le.fp.exec: (null)
|
||||
TID 23727:
|
||||
#0 0x0000000010006034 pthread_join
|
||||
#1 0x00000000100025bc main
|
||||
#2 0x00000000100025bc main
|
||||
#3 0x00000000100123c4 generic_start_main
|
||||
#4 0x0000000010012570 __libc_start_main
|
||||
eu-stack: dwfl_thread_getframes tid 23727 at 0x1001256f in /root/mjw/elfutils/tests/backtrace.ppc64le.fp.exec: No DWARF information found
|
55
tests/Regression/add-ppc64-fallback-unwinder/runtest.sh
Executable file
55
tests/Regression/add-ppc64-fallback-unwinder/runtest.sh
Executable file
@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/add-ppc64-fallback-unwinder
|
||||
# Description: add-ppc64-fallback-unwinder
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TEMPD=\$(mktemp -d)"
|
||||
rlRun "cp backtrace.ppc64le.fp.core.bz2 backtrace.ppc64le.fp.exec.bz2 output.ref $TEMPD"
|
||||
rlRun "pushd $TEMPD"
|
||||
rlRun "bunzip2 backtrace.ppc64le.fp.core.bz2"
|
||||
rlRun "bunzip2 backtrace.ppc64le.fp.exec.bz2"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "eu-stack --exec backtrace.ppc64le.fp.exec --core backtrace.ppc64le.fp.core |& tee output.txt"
|
||||
rlRun "grep '^#' output.ref > output.ref.filtered"
|
||||
rlRun "grep '^#' output.txt > output.txt.filtered"
|
||||
rlRun "diff output.txt.filtered output.ref.filtered"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TEMPD"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
65
tests/Regression/api-break-in-libasm-h/Makefile
Normal file
65
tests/Regression/api-break-in-libasm-h/Makefile
Normal file
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/api-break-in-libasm-h
|
||||
# Description: api-break-in-libasm-h
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/api-break-in-libasm-h
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE test.c
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: api-break-in-libasm-h" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils-devel" >> $(METADATA)
|
||||
@echo "Requires: gcc" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1789885" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Regression/api-break-in-libasm-h/PURPOSE
Normal file
3
tests/Regression/api-break-in-libasm-h/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/elfutils/Regression/api-break-in-libasm-h
|
||||
Description: api-break-in-libasm-h
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
14
tests/Regression/api-break-in-libasm-h/main.fmf
Normal file
14
tests/Regression/api-break-in-libasm-h/main.fmf
Normal file
@ -0,0 +1,14 @@
|
||||
summary: api-break-in-libasm-h
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils-devel
|
||||
- gcc
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/api-break-in-libasm-h
|
||||
extra-task: /tools/elfutils/Regression/api-break-in-libasm-h
|
39
tests/Regression/api-break-in-libasm-h/runtest.sh
Executable file
39
tests/Regression/api-break-in-libasm-h/runtest.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/api-break-in-libasm-h
|
||||
# Description: api-break-in-libasm-h
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "test -f /usr/include/elfutils/libasm.h"
|
||||
rlRun "gcc -I/usr/include/elfutils -c test.c"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
6
tests/Regression/api-break-in-libasm-h/test.c
Normal file
6
tests/Regression/api-break-in-libasm-h/test.c
Normal file
@ -0,0 +1,6 @@
|
||||
#include <libelf.h>
|
||||
#include <gelf.h>
|
||||
#include <libasm.h>
|
||||
|
||||
|
||||
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
||||
# Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE libantlr.a.bz2
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Vaclav Kadlcik <vkadlcik@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Requires: bzip2" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1059897" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,12 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
||||
Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)
|
||||
Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
Bug summary: Support 64-bit /SYM64/ symbol table
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1059897
|
||||
|
||||
Verify that a 64-bit symbol table produced on s390x is readable by elfutils
|
||||
tools. The test is based on Ed Santiago's examples in Bugzilla; a test file
|
||||
(libantlr.a) is taken from antlr-C++-2.7.7-30.el7.s390x.rpm. Mark Wielaard
|
||||
mentioned another test included in the upstream; it gets processed within
|
||||
../../testsuite (which runs the complete upstream testsuite) so its omission
|
||||
here is intentional.
|
Binary file not shown.
@ -0,0 +1,23 @@
|
||||
summary: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)
|
||||
description: |
|
||||
Bug summary: Support 64-bit /SYM64/ symbol table
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1059897
|
||||
|
||||
Verify that a 64-bit symbol table produced on s390x is readable by elfutils
|
||||
tools. The test is based on Ed Santiago's examples in Bugzilla; a test file
|
||||
(libantlr.a) is taken from antlr-C++-2.7.7-30.el7.s390x.rpm. Mark Wielaard
|
||||
mentioned another test included in the upstream; it gets processed within
|
||||
../../testsuite (which runs the complete upstream testsuite) so its omission
|
||||
here is intentional.
|
||||
contact:
|
||||
- Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- bzip2
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
||||
extra-task: /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
64
tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/runtest.sh
Executable file
64
tests/Regression/bz1059897-Support-64-bit-SYM64-symbol-table/runtest.sh
Executable file
@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz1059897-Support-64-bit-SYM64-symbol-table
|
||||
# Description: Test for BZ#1059897 (Support 64-bit /SYM64/ symbol table)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
TEST_ARCHIVE_1='libantlr.a' # see PURPOSE & Bugzilla
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp ${TEST_ARCHIVE_1}.bz2 $TmpDir" 0 "Copying test files"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
|
||||
rlRun "bunzip2 ${TEST_ARCHIVE_1}.bz2"
|
||||
rlAssertExists "$TEST_ARCHIVE_1"
|
||||
|
||||
rlRun -s "eu-ar t $TEST_ARCHIVE_1" 0 "Checking eu-ar runs"
|
||||
rlAssertExists "$rlRun_LOG"
|
||||
rlAssertGrep '^/SYM64/$' "$rlRun_LOG"
|
||||
rlAssertGrep '^ANTLRUtil\.o$' "$rlRun_LOG"
|
||||
|
||||
rlRun -s "eu-readelf -a $TEST_ARCHIVE_1" 0 "Checking eu-readelf runs"
|
||||
rlAssertExists "$rlRun_LOG"
|
||||
rlAssertGrep '^ELF Header:$' "$rlRun_LOG"
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
||||
# Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Requires: gdb" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1371517" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
||||
Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: eu-stack killed by SIGABRT processing gcore created core file
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1371517
|
@ -0,0 +1,16 @@
|
||||
summary: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)
|
||||
description: |
|
||||
Bug summary: eu-stack killed by SIGABRT processing gcore created core file
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1371517
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- gdb
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
||||
extra-task: /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
@ -0,0 +1,72 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz1371517-eu-stack-killed-by-SIGABRT-processing-gcore
|
||||
# Description: Test for BZ#1371517 (eu-stack killed by SIGABRT processing gcore)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlRun "rpm -q elfutils"
|
||||
rlRun "rpm -q gdb"
|
||||
rlRun "TMPD=\$(mktemp -d)"
|
||||
rlRun "pushd $TMPD"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStart FAIL "Build an unstripped binary"
|
||||
# ... so that we don't need to rely on the infra providing us with
|
||||
# a (coreutils-) debuginfo package.
|
||||
echo -e "#include <unistd.h>\nint main () { sleep(100); return 0; }" | gcc -g -xc -o sleep100 -
|
||||
rlRun "file sleep100 | fgrep 'not stripped'"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
./sleep100 &
|
||||
SLEEP_PID=$!
|
||||
rlRun "gcore $SLEEP_PID"
|
||||
# On some arches, such as aarch64, or s390x, eu-stack doesn't end at some
|
||||
# reasonable point, when printing the trace, and goes across main, to
|
||||
# __libc_start_main and even higher and then finally complains about
|
||||
# "no matching address range". But we don't want to be so strict to check
|
||||
# for this right now. Mark Wielaard says it is okay, so I trust him ...
|
||||
# Following assert fails when we get SEGV, which would be bz1371517, which
|
||||
# reproduces e.g. on f25 using elfutils-0.166-2.fc25, or on rhel-7.3
|
||||
# using elfutils-0.166-2.el7.
|
||||
rlRun "eu-stack --executable=./sleep100 --core=core.$SLEEP_PID > output.txt" 0,1
|
||||
# Print the output. Yeah, this could be done using tee or something in
|
||||
# the above line and play games with exitcodes within a pipe chain, but
|
||||
# this actually is https://en.wikipedia.org/wiki/KISS_principle :)
|
||||
rlRun "cat output.txt"
|
||||
# ... we do want to check at least that "main" was listed in the trace.
|
||||
rlRun "awk {'print \$3'} output.txt | grep ^main$"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TMPD"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
64
tests/Regression/bz1717349-vaguely-related-SEGV/Makefile
Normal file
64
tests/Regression/bz1717349-vaguely-related-SEGV/Makefile
Normal file
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
||||
# Description: bz1717349-vaguely-related-SEGV
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE qat_c3xxx.ko
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: bz1717349-vaguely-related-SEGV" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1717349" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Regression/bz1717349-vaguely-related-SEGV/PURPOSE
Normal file
3
tests/Regression/bz1717349-vaguely-related-SEGV/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
||||
Description: bz1717349-vaguely-related-SEGV
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
13
tests/Regression/bz1717349-vaguely-related-SEGV/main.fmf
Normal file
13
tests/Regression/bz1717349-vaguely-related-SEGV/main.fmf
Normal file
@ -0,0 +1,13 @@
|
||||
summary: bz1717349-vaguely-related-SEGV
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
||||
extra-task: /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
BIN
tests/Regression/bz1717349-vaguely-related-SEGV/qat_c3xxx.ko
Normal file
BIN
tests/Regression/bz1717349-vaguely-related-SEGV/qat_c3xxx.ko
Normal file
Binary file not shown.
42
tests/Regression/bz1717349-vaguely-related-SEGV/runtest.sh
Executable file
42
tests/Regression/bz1717349-vaguely-related-SEGV/runtest.sh
Executable file
@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz1717349-vaguely-related-SEGV
|
||||
# Description: bz1717349-vaguely-related-SEGV
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
# This works with base rhel eu-strip, as well as with various SCL versions of it. Convenience :)
|
||||
rlRun "which eu-strip"
|
||||
rlRun "rpm -qf `which eu-strip`"
|
||||
# Test: SEGV is considered a FAIL (reproduces with elfutils-0.176-4.el8), whereas fixed version exists with 0)
|
||||
rlRun "eu-strip --remove-comment --reloc-debug-sections -f qat_c3xxx.ko.debug qat_c3xxx.ko"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,63 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
||||
# Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE ld.bz2 ld.debug.bz2
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Vaclav Kadlcik <vkadlcik@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils bzip2" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 806474" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,9 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
||||
Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)
|
||||
Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
Bug summary: eu-unstrip unwilling to reassembled corrupted separate debuginfo
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=806474
|
||||
|
||||
Make sure eu-unstrip can merge (when forced) a stripped binary and a separate
|
||||
debuginfo in spite of the debuginfo was produced by a buggy version of binutils
|
||||
(see BZ#698005). The test is based on Mark Wielaard's suggestion in Bugzilla.
|
BIN
tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.bz2
Executable file
BIN
tests/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted/ld.bz2
Executable file
Binary file not shown.
Binary file not shown.
@ -0,0 +1,20 @@
|
||||
summary: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)
|
||||
description: |
|
||||
Bug summary: eu-unstrip unwilling to reassembled corrupted separate debuginfo
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=806474
|
||||
|
||||
Make sure eu-unstrip can merge (when forced) a stripped binary and a separate
|
||||
debuginfo in spite of the debuginfo was produced by a buggy version of binutils
|
||||
(see BZ#698005). The test is based on Mark Wielaard's suggestion in Bugzilla.
|
||||
contact:
|
||||
- Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- bzip2
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
||||
extra-task: /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
@ -0,0 +1,74 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz806474-eu-unstrip-unwilling-to-reassembled-corrupted
|
||||
# Description: Test for BZ#806474 (eu-unstrip unwilling to reassembled corrupted)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2014 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
TEST_STRIPPED='ld' # see PURPOSE, BZ#806474, and 698005
|
||||
TEST_DEBUGIFO='ld.debug' # ditto
|
||||
TEST_MERGED='ld-debug'
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp ${TEST_STRIPPED}.bz2 ${TEST_DEBUGIFO}.bz2 $TmpDir" 0 "Copying test files"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
|
||||
rlRun "bunzip2 ${TEST_STRIPPED}.bz2" 0
|
||||
rlRun "bunzip2 ${TEST_DEBUGIFO}.bz2" 0
|
||||
rlAssertExists "$TEST_STRIPPED"
|
||||
rlAssertExists "$TEST_DEBUGIFO"
|
||||
|
||||
rlRun -t -s "eu-unstrip -o $TEST_MERGED $TEST_STRIPPED $TEST_DEBUGIFO" 1 'unstrip with corrupted debuginfo'
|
||||
rlAssertNotExists "$TEST_MERGED"
|
||||
rlAssertGrep '^STDERR:.*ELF header identification.*different, use --force' "$rlRun_LOG"
|
||||
|
||||
rlRun -t -s "eu-unstrip --force -o $TEST_MERGED $TEST_STRIPPED $TEST_DEBUGIFO" 0 'Forced unstrip with corrupted debuginfo'
|
||||
rlAssertExists "$TEST_MERGED"
|
||||
rlAssertGrep '^STDERR:.*WARNING:.*ELF header identification.*different' "$rlRun_LOG"
|
||||
|
||||
rlRun -t -s "file $TEST_MERGED" 0 'Detecting type of merged file'
|
||||
rlAssertGrep '^STDOUT:.*not stripped$' "$rlRun_LOG"
|
||||
|
||||
rlRun -s "eu-objdump -s $TEST_MERGED" 0 'Running objdump on merged file'
|
||||
rlAssertGrep '^Contents of section .debug_info:' "$rlRun_LOG"
|
||||
rlAssertGrep '^Contents of section .debug_line:' "$rlRun_LOG"
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
||||
# Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE a.out
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Dagmar Prokopova <dprokopo@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 917874" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
||||
Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)
|
||||
Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
Bug summary: [RHDT] Assertion failure in eu-addr2line
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=917874
|
Binary file not shown.
@ -0,0 +1,15 @@
|
||||
summary: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)
|
||||
description: |
|
||||
Bug summary: [RHDT] Assertion failure in eu-addr2line
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=917874
|
||||
contact:
|
||||
- Dagmar Prokopova <dprokopo@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
||||
extra-task: /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
60
tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/runtest.sh
Executable file
60
tests/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line/runtest.sh
Executable file
@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz917874-RHDT-Assertion-failure-in-eu-addr2line
|
||||
# Description: Test for BZ#917874 ([RHDT] Assertion failure in eu-addr2line)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
# This was fixed in devtoolset-2-elfutils-0.155-6.
|
||||
|
||||
PACKAGES=(elfutils)
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p" || yum -y install "$p"
|
||||
done; unset p
|
||||
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
|
||||
# We need the reproducer.
|
||||
cp -v a.out $TmpDir
|
||||
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
# This should succeed without assertion fail.
|
||||
rlRun "eu-addr2line -e a.out 0x400589" 0
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
||||
# Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE vpoolengineUS.bz2
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Dagmar Prokopova <dprokopo@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 30m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils bzip2 gcc" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 927626" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
||||
Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)
|
||||
Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
Bug summary: [RHDT] Stack overflow in dwarf_getsrclines
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=927626
|
@ -0,0 +1,17 @@
|
||||
summary: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)
|
||||
description: |
|
||||
Bug summary: [RHDT] Stack overflow in dwarf_getsrclines
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=927626
|
||||
contact:
|
||||
- Dagmar Prokopova <dprokopo@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- bzip2
|
||||
- gcc
|
||||
duration: 30m
|
||||
extra-summary: /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
||||
extra-task: /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz927626-RHDT-Stack-overflow-in-dwarf-getsrclines
|
||||
# Description: Test for BZ#927626 ([RHDT] Stack overflow in dwarf_getsrclines)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
# This was fixed in elfutils-0.155-7.
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
# We need the reproducer.
|
||||
cp -v vpoolengineUS.bz2 $TmpDir
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "bunzip2 vpoolengineUS.bz2"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
# No segfault should appear.
|
||||
rlRun "eu-addr2line -e vpoolengineUS 0x6682f7" 0
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
Binary file not shown.
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
||||
# Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE proc_maps.txt
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Dagmar Prokopova <dprokopo@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 967130" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
||||
Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)
|
||||
Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
Bug summary: [RHDT] eu-unstrip -M abort on socket: line
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=967130
|
@ -0,0 +1,15 @@
|
||||
summary: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)
|
||||
description: |
|
||||
Bug summary: [RHDT] eu-unstrip -M abort on socket: line
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=967130
|
||||
contact:
|
||||
- Dagmar Prokopova <dprokopo@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
||||
extra-task: /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
@ -0,0 +1,82 @@
|
||||
00400000-024aa000 r-xp 00000000 08:02 159659 /opt/MessageRouter/bin/msgrouter_dbg
|
||||
026aa000-026b2000 rwxp 020aa000 08:02 159659 /opt/MessageRouter/bin/msgrouter_dbg
|
||||
026b2000-026bf000 rwxp 00000000 00:00 0
|
||||
0335a000-03e6f000 rwxp 00000000 00:00 0 [heap]
|
||||
2b7b2d6fa000-2b7b2d71a000 r-xp 00000000 08:02 128802 /lib64/ld-2.12.so
|
||||
2b7b2d71a000-2b7b2d89c000 rwxp 00000000 00:00 0
|
||||
2b7b2d919000-2b7b2d91a000 r-xp 0001f000 08:02 128802 /lib64/ld-2.12.so
|
||||
2b7b2d91a000-2b7b2d91b000 rwxp 00020000 08:02 128802 /lib64/ld-2.12.so
|
||||
2b7b2d91b000-2b7b2d91c000 rwxp 00000000 00:00 0
|
||||
2b7b2d91c000-2b7b2d933000 r-xp 00000000 08:02 128833 /lib64/libpthread-2.12.so
|
||||
2b7b2d933000-2b7b2db32000 ---p 00017000 08:02 128833 /lib64/libpthread-2.12.so
|
||||
2b7b2db32000-2b7b2db33000 r-xp 00016000 08:02 128833 /lib64/libpthread-2.12.so
|
||||
2b7b2db33000-2b7b2db34000 rwxp 00017000 08:02 128833 /lib64/libpthread-2.12.so
|
||||
2b7b2db34000-2b7b2db39000 rwxp 00000000 00:00 0
|
||||
2b7b2db39000-2b7b2db40000 r-xp 00000000 08:02 128837 /lib64/librt-2.12.so
|
||||
2b7b2db40000-2b7b2dd3f000 ---p 00007000 08:02 128837 /lib64/librt-2.12.so
|
||||
2b7b2dd3f000-2b7b2dd40000 r-xp 00006000 08:02 128837 /lib64/librt-2.12.so
|
||||
2b7b2dd40000-2b7b2dd41000 rwxp 00007000 08:02 128837 /lib64/librt-2.12.so
|
||||
2b7b2dd41000-2b7b2dd43000 r-xp 00000000 08:02 128815 /lib64/libdl-2.12.so
|
||||
2b7b2dd43000-2b7b2df43000 ---p 00002000 08:02 128815 /lib64/libdl-2.12.so
|
||||
2b7b2df43000-2b7b2df44000 r-xp 00002000 08:02 128815 /lib64/libdl-2.12.so
|
||||
2b7b2df44000-2b7b2df45000 rwxp 00003000 08:02 128815 /lib64/libdl-2.12.so
|
||||
2b7b2df45000-2b7b2e032000 r-xp 00000000 08:02 276647 /usr/lib64/libboost_regex.so.5
|
||||
2b7b2e032000-2b7b2e232000 ---p 000ed000 08:02 276647 /usr/lib64/libboost_regex.so.5
|
||||
2b7b2e232000-2b7b2e239000 rwxp 000ed000 08:02 276647 /usr/lib64/libboost_regex.so.5
|
||||
2b7b2e239000-2b7b2e23a000 rwxp 00000000 00:00 0
|
||||
2b7b2e23a000-2b7b2e322000 r-xp 00000000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13
|
||||
2b7b2e322000-2b7b2e522000 ---p 000e8000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13
|
||||
2b7b2e522000-2b7b2e529000 r-xp 000e8000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13
|
||||
2b7b2e529000-2b7b2e52b000 rwxp 000ef000 08:02 260385 /usr/lib64/libstdc++.so.6.0.13
|
||||
2b7b2e52b000-2b7b2e540000 rwxp 00000000 00:00 0
|
||||
2b7b2e540000-2b7b2e5c3000 r-xp 00000000 08:02 128817 /lib64/libm-2.12.so
|
||||
2b7b2e5c3000-2b7b2e7c2000 ---p 00083000 08:02 128817 /lib64/libm-2.12.so
|
||||
2b7b2e7c2000-2b7b2e7c3000 r-xp 00082000 08:02 128817 /lib64/libm-2.12.so
|
||||
2b7b2e7c3000-2b7b2e7c4000 rwxp 00083000 08:02 128817 /lib64/libm-2.12.so
|
||||
2b7b2e7c4000-2b7b2e7da000 r-xp 00000000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1
|
||||
2b7b2e7da000-2b7b2e9d9000 ---p 00016000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1
|
||||
2b7b2e9d9000-2b7b2e9da000 rwxp 00015000 08:02 136724 /lib64/libgcc_s-4.4.6-20110824.so.1
|
||||
2b7b2e9da000-2b7b2e9db000 rwxp 00000000 00:00 0
|
||||
2b7b2e9db000-2b7b2eb72000 r-xp 00000000 08:02 128809 /lib64/libc-2.12.so
|
||||
2b7b2eb72000-2b7b2ed72000 ---p 00197000 08:02 128809 /lib64/libc-2.12.so
|
||||
2b7b2ed72000-2b7b2ed76000 r-xp 00197000 08:02 128809 /lib64/libc-2.12.so
|
||||
2b7b2ed76000-2b7b2ed77000 rwxp 0019b000 08:02 128809 /lib64/libc-2.12.so
|
||||
2b7b2ed77000-2b7b2ed7c000 rwxp 00000000 00:00 0
|
||||
2b7b2ed7c000-2b7b2eebb000 r-xp 00000000 08:02 276645 /usr/lib64/libicuuc.so.42.1
|
||||
2b7b2eebb000-2b7b2f0bb000 ---p 0013f000 08:02 276645 /usr/lib64/libicuuc.so.42.1
|
||||
2b7b2f0bb000-2b7b2f0cc000 rwxp 0013f000 08:02 276645 /usr/lib64/libicuuc.so.42.1
|
||||
2b7b2f0cc000-2b7b2f0ce000 rwxp 00000000 00:00 0
|
||||
2b7b2f0ce000-2b7b2f256000 r-xp 00000000 08:02 276635 /usr/lib64/libicui18n.so.42.1
|
||||
2b7b2f256000-2b7b2f456000 ---p 00188000 08:02 276635 /usr/lib64/libicui18n.so.42.1
|
||||
2b7b2f456000-2b7b2f463000 rwxp 00188000 08:02 276635 /usr/lib64/libicui18n.so.42.1
|
||||
2b7b2f463000-2b7b2f465000 rwxp 00000000 00:00 0
|
||||
2b7b2f465000-2b7b303aa000 r-xp 00000000 08:02 276633 /usr/lib64/libicudata.so.42.1
|
||||
2b7b303aa000-2b7b305a9000 ---p 00f45000 08:02 276633 /usr/lib64/libicudata.so.42.1
|
||||
2b7b305a9000-2b7b305aa000 rwxp 00f44000 08:02 276633 /usr/lib64/libicudata.so.42.1
|
||||
2b7b305aa000-2b7b313f5000 rwxp 00000000 00:00 0
|
||||
2b7b313f5000-2b7b313f6000 ---p 00000000 00:00 0
|
||||
2b7b313f6000-2b7b31df6000 rwxp 00000000 00:00 0
|
||||
2b7b31df6000-2b7b31df7000 ---p 00000000 00:00 0
|
||||
2b7b31df7000-2b7b327f7000 rwxp 00000000 00:00 0
|
||||
2b7b34000000-2b7b34021000 rwxp 00000000 00:00 0
|
||||
2b7b34021000-2b7b38000000 ---p 00000000 00:00 0
|
||||
2b7b38000000-2b7b38282000 rwxp 00000000 00:00 0
|
||||
2b7b38282000-2b7b38302000 rwxs 00000000 00:06 493872 socket:[493872]
|
||||
2b7b38302000-2b7b38312000 rwxs 00000000 00:06 493872 socket:[493872]
|
||||
2b7b38312000-2b7b38b12000 r-xs 00000000 00:06 493872 socket:[493872]
|
||||
2b7b38b12000-2b7b38b22000 rwxs 00000000 00:06 493872 socket:[493872]
|
||||
2b7b38b22000-2b7b39322000 rwxs 00000000 00:06 493872 socket:[493872]
|
||||
2b7b39322000-2b7b39323000 ---p 00000000 00:00 0
|
||||
2b7b39323000-2b7b39d23000 rwxp 00000000 00:00 0
|
||||
2b7b3c000000-2b7b3c021000 rwxp 00000000 00:00 0
|
||||
2b7b3c021000-2b7b40000000 ---p 00000000 00:00 0
|
||||
2b7b40000000-2b7b40021000 rwxp 00000000 00:00 0
|
||||
2b7b40021000-2b7b44000000 ---p 00000000 00:00 0
|
||||
2b7b44010000-2b7b4401c000 r-xp 00000000 08:02 128825 /lib64/libnss_files-2.12.so
|
||||
2b7b4401c000-2b7b4421c000 ---p 0000c000 08:02 128825 /lib64/libnss_files-2.12.so
|
||||
2b7b4421c000-2b7b4421d000 r-xp 0000c000 08:02 128825 /lib64/libnss_files-2.12.so
|
||||
2b7b4421d000-2b7b4421e000 rwxp 0000d000 08:02 128825 /lib64/libnss_files-2.12.so
|
||||
2b7b4439f000-2b7b45ea1000 rwxp 00000000 00:00 0
|
||||
7fff26cf7000-7fff26d0c000 rwxp 00000000 00:00 0 [stack]
|
||||
7fff26dff000-7fff26e00000 r-xp 00000000 00:00 0 [vdso]
|
||||
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
|
53
tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/runtest.sh
Executable file
53
tests/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line/runtest.sh
Executable file
@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/bz967130-RHDT-eu-unstrip-M-abort-on-socket-line
|
||||
# Description: Test for BZ#967130 ([RHDT] eu-unstrip -M abort on socket line)
|
||||
# Author: Dagmar Prokopova <dprokopo@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
# We need a reproducer.
|
||||
cp -v proc_maps.txt $TmpDir
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
#No Abort here.
|
||||
rlRun "eu-unstrip -n -M proc_maps.txt " 0
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
# Description: elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: elfutils-segmentation-fault-in-elf64-xlatetom-in" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1680048" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
Binary file not shown.
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
Description: elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhdts-8]
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680048
|
@ -0,0 +1,15 @@
|
||||
summary: elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
description: |
|
||||
Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhdts-8]
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680048
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
extra-task: /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
39
tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/runtest.sh
Executable file
39
tests/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in/runtest.sh
Executable file
@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
# Description: elfutils-segmentation-fault-in-elf64-xlatetom-in
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
# failure is 139 - SEGV, 2 is okay
|
||||
rlRun "eu-stack --core=POC2" 2
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,4 @@
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
15
tests/Regression/eu-elfcompress-breaks-hard-links/main.fmf
Normal file
15
tests/Regression/eu-elfcompress-breaks-hard-links/main.fmf
Normal file
@ -0,0 +1,15 @@
|
||||
summary: eu-elfcompress-breaks-hard-links
|
||||
description: ''
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=2188064
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- gcc
|
||||
duration: 1h
|
||||
extra-summary: /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links
|
||||
extra-task: /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links
|
55
tests/Regression/eu-elfcompress-breaks-hard-links/runtest.sh
Executable file
55
tests/Regression/eu-elfcompress-breaks-hard-links/runtest.sh
Executable file
@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/eu-elfcompress-breaks-hard-links
|
||||
# Description: eu-elfcompress-breaks-hard-links
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2023 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TMP=$(mktemp -d)"
|
||||
rlRun "cp bubble.c $TMP/"
|
||||
rlRun "pushd $TMP"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "gcc -o a.out -g bubble.c"
|
||||
rlRun "ln a.out a.lnk"
|
||||
rlRun "eu-elfcompress -q -p -t none a.lnk"
|
||||
rlRun "i0=$(stat -c '%i' a.out)"
|
||||
rlRun "i1=$(stat -c '%i' a.lnk)"
|
||||
rlRun "test $i0 -eq $i1"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TMP"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
||||
# Description: Test for BZ#1724350 (eu-readelf reports machine type is <unknown>)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test for BZ#1724350 (eu-readelf reports machine type is <unknown>)" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils linux-firmware" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1724350" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
||||
Description: Test for BZ#1724350 (eu-readelf reports machine type is <unknown>)
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: eu-readelf reports machine type is <unknown> on firmware blobs
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1724350
|
@ -0,0 +1,16 @@
|
||||
summary: Test for BZ#1724350 (eu-readelf reports machine type is <unknown>)
|
||||
description: |
|
||||
Bug summary: eu-readelf reports machine type is <unknown> on firmware blobs
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1724350
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- linux-firmware
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
||||
extra-task: /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
50
tests/Regression/eu-readelf-reports-machine-type-is-unknown/runtest.sh
Executable file
50
tests/Regression/eu-readelf-reports-machine-type-is-unknown/runtest.sh
Executable file
@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/eu-readelf-reports-machine-type-is-unknown
|
||||
# Description: Test for BZ#1724350 (eu-readelf reports machine type is <unknown>)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
__showgreenlight ()
|
||||
{
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "echo \"Irrelevant for $X_SCLS\""
|
||||
rlPhaseEnd
|
||||
rlJournalEnd
|
||||
exit 0
|
||||
}
|
||||
|
||||
echo $X_SCLS | fgrep -q gcc-toolset-9 && __showgreenlight
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "find /usr/lib/firmware/ -name '*.nffw' | xargs eu-readelf -h | awk '/Machine/ {print \$NF}' | fgrep '<unknown>'" 1
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
64
tests/Regression/eu-strip-generates-empty-output-if/Makefile
Normal file
64
tests/Regression/eu-strip-generates-empty-output-if/Makefile
Normal file
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
||||
# Description: eu-strip-generates-empty-output-if
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: eu-strip-generates-empty-output-if" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 48h" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1455620" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
||||
Description: eu-strip-generates-empty-output-if
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: eu-strip generates empty output if there is nothing to do
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1455620
|
15
tests/Regression/eu-strip-generates-empty-output-if/main.fmf
Normal file
15
tests/Regression/eu-strip-generates-empty-output-if/main.fmf
Normal file
@ -0,0 +1,15 @@
|
||||
summary: eu-strip-generates-empty-output-if
|
||||
description: |
|
||||
Bug summary: eu-strip generates empty output if there is nothing to do
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1455620
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
duration: 48h
|
||||
extra-summary: /tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
||||
extra-task: /tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
52
tests/Regression/eu-strip-generates-empty-output-if/runtest.sh
Executable file
52
tests/Regression/eu-strip-generates-empty-output-if/runtest.sh
Executable file
@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/eu-strip-generates-empty-output-if
|
||||
# Description: eu-strip-generates-empty-output-if
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "tmp=\$(mktemp -d)"
|
||||
rlRun "pushd $tmp"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "echo 'int main() { return 1; }' > test.c"
|
||||
rlRun "gcc test.c"
|
||||
rlRun "eu-strip -g -o test ./a.out"
|
||||
rlRun "test $(stat --format='%s' test) -gt 0"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $tmp"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
# Description: eu-strip-invalid-section-alignment-while
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2016 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE testprog.c testprog2.c
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: eu-strip-invalid-section-alignment-while" >> $(METADATA)
|
||||
@echo "Type: Regression" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: elfutils" >> $(METADATA)
|
||||
@echo "Requires: elfutils" >> $(METADATA)
|
||||
@echo "Requires: gcc" >> $(METADATA)
|
||||
@echo "Requires: libaio-devel" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Bug: 1303845" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
@ -0,0 +1,5 @@
|
||||
PURPOSE of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
Description: eu-strip-invalid-section-alignment-while
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
||||
Bug summary: eu-strip: invalid section alignment while stripping debuginfo from executables
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1303845
|
@ -0,0 +1,17 @@
|
||||
summary: eu-strip-invalid-section-alignment-while
|
||||
description: |
|
||||
Bug summary: eu-strip: invalid section alignment while stripping debuginfo from executables
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1303845
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- elfutils
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- elfutils
|
||||
- gcc
|
||||
- libaio-devel
|
||||
duration: 5m
|
||||
extra-summary: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
extra-task: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
66
tests/Regression/eu-strip-invalid-section-alignment-while/runtest.sh
Executable file
66
tests/Regression/eu-strip-invalid-section-alignment-while/runtest.sh
Executable file
@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
# Description: eu-strip-invalid-section-alignment-while
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2016 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="elfutils"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in gcc eu-strip; do
|
||||
rlRun "which $p"
|
||||
rlRun "rpm -qf $( which $p )"
|
||||
done
|
||||
rlRun "tmp=$(mktemp -d)"
|
||||
rlRun "cp testprog.c testprog2.c $tmp"
|
||||
rlRun "pushd $tmp"
|
||||
rlPhaseEnd
|
||||
|
||||
if rpm -q libaio-devel; then
|
||||
rlPhaseStart FAIL customer-testcase
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1304870
|
||||
rlRun "gcc testprog.c -laio -g -o testprog"
|
||||
rlRun "eu-strip testprog"
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
rlPhaseStart FAIL upstream-testcase
|
||||
rlRun "gcc -g testprog2.c -o testprog2"
|
||||
# Testcase for this fix should at some point reach the upstream and
|
||||
# the rhel package too. After that this QE testcase should be obsoleted.
|
||||
# Please, refer to:
|
||||
# https://lists.fedorahosted.org/archives/list/elfutils-devel@lists.fedorahosted.org/message/OP6AXOW5PF6GPB4KN7XQZSZ5JY6RK52U/
|
||||
rlRun "eu-strip testprog2"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $tmp"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
@ -0,0 +1,16 @@
|
||||
Owner: Martin Cermak <mcermak@redhat.com>
|
||||
Name: /tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
TestVersion: 1.0
|
||||
Path: /mnt/tests/tools/elfutils/Regression/eu-strip-invalid-section-alignment-while
|
||||
Description: eu-strip-invalid-section-alignment-while
|
||||
Type: Regression
|
||||
TestTime: 1d
|
||||
RunFor: elfutils
|
||||
Requires: elfutils
|
||||
Requires: gcc
|
||||
Requires: libaio-devel
|
||||
Priority: Normal
|
||||
License: GPLv2+
|
||||
Confidential: no
|
||||
Destructive: no
|
||||
Bug: 1303845
|
@ -0,0 +1,115 @@
|
||||
/*
|
||||
* aio-dio-subblock-eof-read - test AIO read of last block of DIO file
|
||||
* Copyright (C) 2005 Jeff Moyer
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
/*
|
||||
* Code taken from an example posted to linux-aio at kvack.org
|
||||
* http://marc.info/?l=linux-aio&m=112263621431161&w=2
|
||||
* Original Author: Drangon Zhou
|
||||
* Munged & rewritten by Jeff Moyer.
|
||||
*
|
||||
* Description: This source code implements a test to ensure that an AIO
|
||||
* read of the last block in a file opened with O_DIRECT returns the proper
|
||||
* amount of data. In the past, there was a bug that resulted in a return
|
||||
* value of the requested block size, when in fact there was only a fraction
|
||||
* of that data available. Thus, if the last data block contained 300 bytes
|
||||
* worth of data, and the user issued a 4k read, we want to ensure that
|
||||
* the return value is 300, not 4k.
|
||||
*/
|
||||
#define _GNU_SOURCE
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <libaio.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
|
||||
/* Create a file of a size that is not a multiple of block size */
|
||||
#define FILE_SIZE 300
|
||||
|
||||
#define fail(fmt , args...) \
|
||||
do {\
|
||||
printf(fmt , ##args);\
|
||||
exit(1);\
|
||||
} while (0)
|
||||
|
||||
static unsigned char buffer[4096] __attribute((aligned (4096)));
|
||||
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
int ret;
|
||||
int fd;
|
||||
const char *filename;
|
||||
struct iocb myiocb;
|
||||
struct iocb *cb = &myiocb;
|
||||
io_context_t ioctx;
|
||||
struct io_event ie;
|
||||
|
||||
if (argc != 2)
|
||||
fail("only arg should be file name");
|
||||
|
||||
filename = argv[1];
|
||||
fd = open(filename, O_CREAT|O_RDWR|O_DIRECT, 0600);
|
||||
if (fd < 0)
|
||||
fail("open returned error %d\n", errno);
|
||||
|
||||
ret = ftruncate(fd, FILE_SIZE);
|
||||
if (ret < 0)
|
||||
fail("truncate returned error %d\n", errno);
|
||||
|
||||
/* <1> use normal disk read, this should be ok */
|
||||
ret = read(fd, buffer, 4096);
|
||||
if (ret != FILE_SIZE)
|
||||
fail("buffered read returned %d, should be 300\n", ret);
|
||||
|
||||
/* <2> use AIO disk read, it sees error. */
|
||||
memset(&myiocb, 0, sizeof(myiocb));
|
||||
cb->data = 0;
|
||||
cb->key = 0;
|
||||
cb->aio_lio_opcode = IO_CMD_PREAD;
|
||||
cb->aio_reqprio = 0;
|
||||
cb->aio_fildes = fd;
|
||||
cb->u.c.buf = buffer;
|
||||
cb->u.c.nbytes = 4096;
|
||||
cb->u.c.offset = 0;
|
||||
|
||||
ret = io_queue_init(1, &ioctx);
|
||||
if (ret != 0)
|
||||
fail("io_queue_init returned error %d\n", ret);
|
||||
|
||||
ret = io_submit(ioctx, 1, &cb);
|
||||
if (ret != 1)
|
||||
fail("io_submit returned error %d\n", ret);
|
||||
|
||||
ret = io_getevents(ioctx, 1, 1, &ie, NULL);
|
||||
if (ret != 1)
|
||||
fail("io_getevents returned %d\n", ret);
|
||||
|
||||
/*
|
||||
* If all goes well, we should see 300 bytes read. If things
|
||||
* are broken, we may very well see a result of 4k.
|
||||
*/
|
||||
if (ie.res != FILE_SIZE)
|
||||
fail("AIO read of last block in file returned %ld bytes, "
|
||||
"expected %d\n", ie.res, FILE_SIZE);
|
||||
|
||||
printf("AIO read of last block in file succeeded.\n");
|
||||
return 0;
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user