[PATCH] readelf: Skip section if name is NULL in print_debug.
by Mark Wielaard
Don't crash and burn when a section doesn't have a name (possibly invalid
ELF file string table). Just try the next section instead of calling strcmp
on NULL.
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
src/ChangeLog | 4 ++++
src/readelf.c | 4 +++-
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 5535cff..7e68036 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-27 Mark Wielaard <mjw(a)redhat.com>
+
+ * readelf.c (print_debug): Skip section if name is NULL.
+
2014-05-26 Mark Wielaard <mjw(a)redhat.com>
* readelf.c (handle_relocs_rela): Print header like handle_relocs_rel
diff --git a/src/readelf.c b/src/readelf.c
index ea14a09..6bbe436 100644
--- a/src/readelf.c
+++ b/src/readelf.c
@@ -7962,8 +7962,10 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr)
/ sizeof (debug_sections[0]));
const char *name = elf_strptr (ebl->elf, shstrndx,
shdr->sh_name);
- int n;
+ if (name == NULL)
+ continue;
+ int n;
for (n = 0; n < ndebug_sections; ++n)
if (strcmp (name, debug_sections[n].name) == 0
#if USE_ZLIB
--
1.7.1
9 years, 3 months
[PATCH] readelf: Don't print 'for section' when rela section sh_info is zero.
by Mark Wielaard
This matches how handle_relocs_rel already printed the header.
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
src/ChangeLog | 5 +++++
src/readelf.c | 16 +++++++++++++++-
2 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 4062fc7..5535cff 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+ * readelf.c (handle_relocs_rela): Print header like handle_relocs_rel
+ does, when sh_info == 0.
+
+2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+
* unstrip.c (find_alloc_sections_prelink): Allow non-split .bss
section when sh_size of the original and undo .bss section are equal.
diff --git a/src/readelf.c b/src/readelf.c
index 45b1910..ea14a09 100644
--- a/src/readelf.c
+++ b/src/readelf.c
@@ -1971,7 +1971,8 @@ handle_relocs_rela (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr)
error (EXIT_FAILURE, 0,
gettext ("cannot get section header string table index"));
- printf (ngettext ("\
+ if (shdr->sh_info != 0)
+ printf (ngettext ("\
\nRelocation section [%2zu] '%s' for section [%2u] '%s' at offset %#0" PRIx64 " contains %d entry:\n",
"\
\nRelocation section [%2zu] '%s' for section [%2u] '%s' at offset %#0" PRIx64 " contains %d entries:\n",
@@ -1982,6 +1983,19 @@ handle_relocs_rela (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr)
elf_strptr (ebl->elf, shstrndx, destshdr->sh_name),
shdr->sh_offset,
nentries);
+ else
+ /* The .rela.dyn section does not refer to a specific section but
+ instead of section index zero. Do not try to print a section
+ name. */
+ printf (ngettext ("\
+\nRelocation section [%2u] '%s' at offset %#0" PRIx64 " contains %d entry:\n",
+ "\
+\nRelocation section [%2u] '%s' at offset %#0" PRIx64 " contains %d entries:\n",
+ nentries),
+ (unsigned int) elf_ndxscn (scn),
+ elf_strptr (ebl->elf, shstrndx, shdr->sh_name),
+ shdr->sh_offset,
+ nentries);
fputs_unlocked (class == ELFCLASS32
? gettext ("\
Offset Type Value Addend Name\n")
--
1.7.1
9 years, 3 months
[PATCH] unstrip: Allow prelinked, but non-split .bss section.
by Mark Wielaard
If the section sh_size of the original and undo section are equal then
match them and don't set split_bss. This is also what prelink's
undo_sections allows.
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
src/ChangeLog | 5 +++++
src/unstrip.c | 5 +++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/ChangeLog b/src/ChangeLog
index 4067583..4062fc7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+ * unstrip.c (find_alloc_sections_prelink): Allow non-split .bss
+ section when sh_size of the original and undo .bss section are equal.
+
+2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+
* unstrip.c (options): Add --force, -F.
(struct arg_info): Add bool force.
(parse_opt): Handle 'F', set force.
diff --git a/src/unstrip.c b/src/unstrip.c
index 4738abb..3813694 100644
--- a/src/unstrip.c
+++ b/src/unstrip.c
@@ -1125,10 +1125,11 @@ find_alloc_sections_prelink (Elf *debug, Elf_Data *debug_shstrtab,
&& (sec->shdr.sh_type == undo_sec->shdr.sh_type
|| (sec->shdr.sh_type == SHT_PROGBITS
&& undo_sec->shdr.sh_type == SHT_NOBITS))
- && sec->shdr.sh_size < undo_sec->shdr.sh_size
+ && sec->shdr.sh_size <= undo_sec->shdr.sh_size
&& (!strcmp (sec->name, ".bss")
|| !strcmp (sec->name, ".sbss"))
- && (split_bss = sec) > sections)))
+ && (sec->shdr.sh_size == undo_sec->shdr.sh_size
+ || (split_bss = sec) > sections))))
{
sec->outscn = undo_sec->outscn;
undo_sec = NULL;
--
1.7.1
9 years, 3 months
[PATCH] unstrip: Add --force to force combining files when ELF headers don't match.
by Mark Wielaard
Older versions of GNU binutils strip would drop some ELF header flags.
Causing the main ELF file and the separate .debug file to have mismatched
ELF header fields. Unfortunately some distros are still shipping such files.
eu-unstrip doesn't want to recombine such files. Add a more explicit
explanation which fields don't match and provide a --force, -F flag to
force combining such files anyway (producing a warning).
https://bugzilla.redhat.com/show_bug.cgi?id=698005
https://bugzilla.redhat.com/show_bug.cgi?id=806474
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
ChangeLog | 4 +++
NEWS | 5 ++++
src/ChangeLog | 15 +++++++++++++
src/unstrip.c | 62 ++++++++++++++++++++++++++++++++++++++++++--------------
4 files changed, 70 insertions(+), 16 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 84dd193..b05f5bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+
+ * NEWS: New section 0.160. Add unstrip --force.
+
2014-05-17 Mark Wielaard <mjw(a)redhat.com>
* configure.ac: Set version to 0.159.
diff --git a/NEWS b/NEWS
index 8ac4631..4050200 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,8 @@
+Version 0.160
+
+unstrip: New option -F, --force to combining files even if some ELF headers
+ don't seem to match.
+
Version 0.159
stack: New option -d, --debugname to lookup DWARF debuginfo name for frame.
diff --git a/src/ChangeLog b/src/ChangeLog
index 4197ccd..4067583 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,18 @@
+2014-05-26 Mark Wielaard <mjw(a)redhat.com>
+
+ * unstrip.c (options): Add --force, -F.
+ (struct arg_info): Add bool force.
+ (parse_opt): Handle 'F', set force.
+ (handle_explicit_files): Add force argument, add warn function,
+ separate check ehdr field checks, use warn.
+ (handle_dwfl_module): Add force argument, pass on to
+ handle_explicit_files.
+ (handle_output_dir_module): Add force argument, pass on to
+ handle_dwfl_module.
+ (handle_implicit_modules): Pass info->force to handle_dwfl_module and
+ handle_output_dir_module.
+ (main): Pass info.force to handle_explicit_files.
+
2014-05-19 Mark Wielaard <mjw(a)redhat.com>
* elflint.c (check_reloc_shdr): Check ebl_check_reloc_target_type.
diff --git a/src/unstrip.c b/src/unstrip.c
index f6660a3..4738abb 100644
--- a/src/unstrip.c
+++ b/src/unstrip.c
@@ -1,5 +1,5 @@
/* Combine stripped files with separate symbols and debug information.
- Copyright (C) 2007-2012 Red Hat, Inc.
+ Copyright (C) 2007-2012, 2014 Red Hat, Inc.
This file is part of elfutils.
Written by Roland McGrath <roland(a)redhat.com>, 2007.
@@ -82,6 +82,9 @@ static const struct argp_option options[] =
N_("Apply relocations to section contents in ET_REL files"), 0 },
{ "list-only", 'n', NULL, 0,
N_("Only list module and file names, build IDs"), 0 },
+ { "force", 'F', NULL, 0,
+ N_("Force combining files even if some ELF headers don't seem to match"),
+ 0 },
{ NULL, 0, NULL, 0, NULL, 0 }
};
@@ -97,6 +100,7 @@ struct arg_info
bool modnames;
bool match_files;
bool relocate;
+ bool force;
};
/* Handle program arguments. */
@@ -147,6 +151,9 @@ parse_opt (int key, char *arg, struct argp_state *state)
case 'R':
info->relocate = true;
break;
+ case 'F':
+ info->force = true;
+ break;
case ARGP_KEY_ARGS:
case ARGP_KEY_NO_ARGS:
@@ -1935,9 +1942,20 @@ open_file (const char *file, bool writable)
/* Handle a pair of files we need to open by name. */
static void
-handle_explicit_files (const char *output_file, bool create_dirs,
+handle_explicit_files (const char *output_file, bool create_dirs, bool force,
const char *stripped_file, const char *unstripped_file)
{
+
+ /* Warn, and exit if not forced to continue, if some ELF header
+ sanity check for the stripped and unstripped files failed. */
+ void warn (const char *msg)
+ {
+ error (force ? 0 : EXIT_FAILURE, 0, "%s'%s' and '%s' %s%s.",
+ force ? _("WARNING: ") : "",
+ stripped_file, unstripped_file, msg,
+ force ? "" : _(", use --force"));
+ }
+
int stripped_fd = open_file (stripped_file, false);
Elf *stripped = elf_begin (stripped_fd, ELF_C_READ, NULL);
GElf_Ehdr stripped_ehdr;
@@ -1956,12 +1974,23 @@ handle_explicit_files (const char *output_file, bool create_dirs,
ELF_CHECK (gelf_getehdr (unstripped, &unstripped_ehdr),
_("cannot create ELF descriptor: %s"));
- if (memcmp (stripped_ehdr.e_ident, unstripped_ehdr.e_ident, EI_NIDENT)
- || stripped_ehdr.e_type != unstripped_ehdr.e_type
- || stripped_ehdr.e_machine != unstripped_ehdr.e_machine
- || stripped_ehdr.e_phnum != unstripped_ehdr.e_phnum)
- error (EXIT_FAILURE, 0, _("'%s' and '%s' do not seem to match"),
- stripped_file, unstripped_file);
+ if (memcmp (stripped_ehdr.e_ident,
+ unstripped_ehdr.e_ident, EI_NIDENT) != 0)
+ warn (_("ELF header identification (e_ident) different"));
+
+ if (stripped_ehdr.e_type != unstripped_ehdr.e_type)
+ warn (_("ELF header type (e_type) different"));
+
+ if (stripped_ehdr.e_machine != unstripped_ehdr.e_machine)
+ warn (_("ELF header machine type (e_machine) different"));
+
+ if (stripped_ehdr.e_phnum != unstripped_ehdr.e_phnum)
+ {
+ /* Don't even try, not even with --force. */
+ error (EXIT_FAILURE, 0,
+ "'%s' and '%s' program header numbers (e_phnum) different.",
+ stripped_file, unstripped_file);
+ }
}
handle_file (output_file, create_dirs, stripped, &stripped_ehdr, unstripped);
@@ -1976,7 +2005,7 @@ handle_explicit_files (const char *output_file, bool create_dirs,
/* Handle a pair of files opened implicitly by libdwfl for one module. */
static void
-handle_dwfl_module (const char *output_file, bool create_dirs,
+handle_dwfl_module (const char *output_file, bool create_dirs, bool force,
Dwfl_Module *mod, bool all, bool ignore, bool relocate)
{
GElf_Addr bias;
@@ -2048,7 +2077,7 @@ handle_dwfl_module (const char *output_file, bool create_dirs,
(void) dwfl_module_info (mod, NULL, NULL, NULL, NULL, NULL,
&stripped_file, &unstripped_file);
- handle_explicit_files (output_file, create_dirs,
+ handle_explicit_files (output_file, create_dirs, force,
stripped_file, unstripped_file);
return;
}
@@ -2068,7 +2097,7 @@ handle_dwfl_module (const char *output_file, bool create_dirs,
/* Handle one module being written to the output directory. */
static void
-handle_output_dir_module (const char *output_dir, Dwfl_Module *mod,
+handle_output_dir_module (const char *output_dir, Dwfl_Module *mod, bool force,
bool all, bool ignore, bool modnames, bool relocate)
{
if (! modnames)
@@ -2089,7 +2118,7 @@ handle_output_dir_module (const char *output_dir, Dwfl_Module *mod,
if (asprintf (&output_file, "%s/%s", output_dir, modnames ? name : file) < 0)
error (EXIT_FAILURE, 0, _("memory exhausted"));
- handle_dwfl_module (output_file, true, mod, all, ignore, relocate);
+ handle_dwfl_module (output_file, true, force, mod, all, ignore, relocate);
}
@@ -2201,12 +2230,12 @@ handle_implicit_modules (const struct arg_info *info)
{
if (next (offset) != 0)
error (EXIT_FAILURE, 0, _("matched more than one module"));
- handle_dwfl_module (info->output_file, false, mmi.found,
+ handle_dwfl_module (info->output_file, false, info->force, mmi.found,
info->all, info->ignore, info->relocate);
}
else
do
- handle_output_dir_module (info->output_dir, mmi.found,
+ handle_output_dir_module (info->output_dir, mmi.found, info->force,
info->all, info->ignore,
info->modnames, info->relocate);
while ((offset = next (offset)) > 0);
@@ -2296,11 +2325,12 @@ or - if no debuginfo was found, or . if FILE contains the debug information.\
char *file;
if (asprintf (&file, "%s/%s", info.output_dir, info.args[0]) < 0)
error (EXIT_FAILURE, 0, _("memory exhausted"));
- handle_explicit_files (file, true, info.args[0], info.args[1]);
+ handle_explicit_files (file, true, info.force,
+ info.args[0], info.args[1]);
free (file);
}
else
- handle_explicit_files (info.output_file, false,
+ handle_explicit_files (info.output_file, false, info.force,
info.args[0], info.args[1]);
}
else
--
1.7.1
9 years, 3 months
elfutils 0.159 released
by Mark Wielaard
A new release of elfutils is available now at:
https://fedorahosted.org/releases/e/l/elfutils/0.159/
* NEWS *
Version 0.159
stack: New option -d, --debugname to lookup DWARF debuginfo name for
frame. New option -i, --inlines to show inlined frames using
DWARF debuginfo.
libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level
Functions. New function dwelf_elf_gnu_debuglink,
dwelf_dwarf_gnu_debugaltlink, and dwelf_elf_gnu_build_id.
libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and
DW_FORM_GNU_strp_alt is now enabled by default and no longer
experimental. Added new functions dwarf_getalt and dwarf_setalt
to get or set the alternative debug file used for the alt FORMs.
The dwfl_linux_proc_find_elf callback will now find ELF from
process memory for (deleted) files if the Dwfl has process state
attached.
libdwfl: The dwfl_build_id_find_debuginfo and
dwfl_standard_find_debuginfo functions will now try to resolve
and set the alternative debug file.
backends: Add CFI unwinding for arm. Relies on .debug_frame.
Add arm process initial register state compatible mode to
aarch64. Add aarch64 native and core unwind support.
other: All separate elfutils-robustify patches have been merged.
CVE-2014-0172 Check overflow before calling malloc to uncompress
data.
* GIT SHORTLOG *
Florian Weimer (5):
dwarf_elf_begin: Add .gnu_debugaltlink to the sectiondata array
libdw: Add dwarf_getalt, dwarf_setalt
libdwelf: Add dwelf_dwarf_gnu_debugaltlink
tests/allfcts.c: Install alternate debug information
Move .gnu_debugaltlink handling from libdw to libdwfl
Jakub Jelinek (3):
robustify: elflint.
robustify: libelf.
robustify: libelf gelf define INVALID_NDX macro.
Jan Kratochvil (3):
Fix corruption of non-C++ symbols by the demangler.
Fix false FAILs on testsuite with ulimit -c unlimited.
Fix abort() on missing section headers.
Jean Pihet (1):
backends: add ARM compatible mode to AARCH64
Josh Stone (3):
libdw: Read DW_AT_decl_file/line/column as unsigned
libdwfl: dwfl_module_getdwarf.c (open_elf) only (re)set mod->e_type once.
libdwfl: test dwflsyms on ET_EXEC with minisymtab
Kurt Roeckx (1):
Unwinding is only supported on Linux
Lei Zhang (1):
lib: Add missing config.h #include to crc32_file.c.
Mark Wielaard (40):
readelf: print_debug_macro_section clear vendor array before use.
backends: aarch64_check_special_symbol check shdr is not NULL before usage.
tests: run-backtrace-demangle.sh check exitcode and max number of frames.
tests: Reduce the total number of self-test files and add ET_REL files.
addr2line: handle_address initialize scopes to NULL.
stack: Add -d, --debugname. Lookup DWARF debuginfo name for frame address.
stack: Initialize -n maxframes to 256 by default.
stack: Add -i, --inlines. Show inlined call frames using DWARF debuginfo.
Use -Wformat=2 by default for all files.
backends: Update arm_reloc.def.
backends: arm_cfi SP (r13) is restored from CFA by default.
backends: Add arm frame_nregs and set_initial_registers_tid.
readelf: Robustify print_phdr program interpreter printing.
readelf: More sanity checks before trying to display interpreter string.
libdwfl: elf-from-memory.c (elf_from_remote_memory): Check against p64 p_type.
libdwfl: linux-proc-maps.c (proc_maps_report): Don't assert on bad input.
readelf: Print DW_FORM_sdata values as signed numbers.
libdwfl: elf_from_remote_memory should use pagesize, not p_align.
libdwfl: dwfl_linux_proc_find_elf use elf_from_remote_memory for (deleted).
libdwfl: elf_from_remote_memory only trust shdrs of last file-only segment.
backends: AARCH64_ABS32 and AARCH64_ABS64 are also valid in ET_REL.
CVE-2014-0172 Check for overflow before calling malloc to uncompress data.
backends: Add aarch64 native and core unwind support.
readelf: convert up to a target long in buf_read_ulong.
readelf: Read the decompressed data when processing .zdebug DWARF sections.
Remove mudflap build option.
tests: run-nm-self.sh use test = not == for string comparisons.
libdw (get_sleb128_step): Remove undefined behavior.
readelf.c (print_gdb_index_section): Use unsigned int for 31 bits left shift.
libdwfl: __libdwfl_frame_reg_[gs]et use uint64_t when checking bits.
readelf: handle_core_item make sure variable length array isn't zero size.
libdwelf: New DWARF ELF Low-level Functions. Add dwelf_elf_gnu_debuglink.
libdwelf: Add dwelf_elf_gnu_build_id.
libdwfl: Move dwz alt multi file searching to find_debuginfo callback.
Remove --enable-dwz. dwz alt debug is no longer experimental.
libdwfl: Don't leak fd on error in linux-proc-maps.c (grovel_auxv).
Prepare 0.159 release.
tests: Don't use static functions in testfile-backtrace-demangle.
backends: Add ebl_check_reloc_target_type.
Regenerate *.po files.
Matthias Klose (1):
tests: backtrace-subr.sh (check_native_core) should check core file name.
Petr Machata (2):
robustify: Use gelf_fsize instead of relying on shdr->sh_entsize.
backends: Make aarch64_regs.c checkable by -Wprintf
Roland McGrath (2):
robustify: readelf.
robustify: strip.
9 years, 4 months
Prepare for elfutils 0.159 release
by Mark Wielaard
Hi,
I think we are almost ready to release 0.159. I updated the release
related files on master and merge master to the portable branch. This is
the current NEWS entry:
Version 0.159
stack: New option -d, --debugname to lookup DWARF debuginfo name for frame.
New option -i, --inlines to show inlined frames using DWARF debuginfo.
libdwelf: New libdwelf.h header for libdw.so DWARF ELF Low-level Functions.
New function dwelf_elf_gnu_debuglink, dwelf_dwarf_gnu_debugaltlink,
and dwelf_elf_gnu_build_id.
libdw: Support for DWZ multifile forms DW_FORM_GNU_ref_alt and
DW_FORM_GNU_strp_alt is now enabled by default and no longer
experimental. Added new functions dwarf_getalt and dwarf_setalt
to get or set the alternative debug file used for the alt FORMs.
The dwfl_linux_proc_find_elf callback will now find ELF from
process memory for (deleted) files if the Dwfl has process state
attached.
libdwfl: The dwfl_build_id_find_debuginfo and dwfl_standard_find_debuginfo
functions will now try to resolve and set the alternative debug file.
backends: Add CFI unwinding for arm. Relies on .debug_frame.
Add arm process initial register state compatible mode to AARCH64.
Add aarch64 native and core unwind support.
other: All separate elfutils-robustify patches have been merged.
CVE-2014-0172 Check overflow before calling malloc to uncompress data.
Tested against fedora rawhide on aarch64, i686, x86_64, s390, s390x and
ppc64 without any FAILS. And on armv7hl with one FAIL.
We added elflint checks against .o ET_REL files which produce on arm:
section [ 8] '.rel.ARM.exidx': invalid destination section type
I'll see if I can figure out what that should be, but I don't think it
is a showstopper because it isn't really a regression.
Tested against RHEL6 on ppc, ppc64, i686, s390, s390x and x86_64 without
any FAILS.
portable branch tested against RHEL5 on ppc64, ppc, ia64, x86_64, i386,
s390 and s390x. All had one failure in the backtrace-demangle test. The
issue is that the test uses local/static functions and apparently the
mangling for that changed (the abi only defines mangling for public
functions). I have a fix for that, which I'll post and integrate before
release.
On RHEL5 ia64 elflint also failed with two issues:
section [13] '.rela.IA_64.unwind': invalid destination section type
Again in an ET_REL file, so it looks like the armv7hl failure above.
section [ 2] '.dynsym': symbol 1: symbol in dynamic symbol table with
non-default visibility
I haven't investigated this one yet.
I'll see if I can figure them out and fix them, but I don't think the
ia64 elflint issues are regressions, so they should not be showstoppers.
Please let me know if there are any regressions you want to fix before
the 0.159 release.
Thanks,
Mark
9 years, 4 months
[COMMITTED] tests: Don't use static functions in testfile-backtrace-demangle.
by Mark Wielaard
Compilers and demanglers might treat local/static functions different
between versions. In particular g++ 4.1.2 and libstdc++ mangle and
demangle the static void cxxfunc (int i) function as _Z7cxxfunci.
While g++ 4.8.2 and libstdc++ mangle and demangle it as _ZL7cxxfunci.
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
tests/ChangeLog | 7 +++++++
tests/testfile-backtrace-demangle.bz2 | Bin 2610 -> 3016 bytes
tests/testfile-backtrace-demangle.cc | 4 ++--
tests/testfile-backtrace-demangle.core.bz2 | Bin 40629 -> 39510 bytes
4 files changed, 9 insertions(+), 2 deletions(-)
mode change 100644 => 100755 tests/testfile-backtrace-demangle.bz2
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 380facd..bb0ad0d 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,10 @@
+2014-05-18 Mark Wielaard <mjw(a)redhat.com>
+
+ * testfile-backtrace-demangle.cc (cxxfunc): Make non-static.
+ (f): Likewise.
+ * testfile-backtrace-demangle.bz2: Regenerate.
+ * testfile-backtrace-demangle.core.bz2: Likewise.
+
2014-05-02 Mark Wielaard <mjw(a)redhat.com>
* Makefile.am (TESTS): run-readelf-dwz-multi.sh and
diff --git a/tests/testfile-backtrace-demangle.bz2 b/tests/testfile-backtrace-demangle.bz2
old mode 100644
new mode 100755
index c3156e89b0537bc89a828a54ba3aeb2a23864591..f0294df1af8ac09afb1bf2ffc5231290b34c30a0
GIT binary patch
literal 3016
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
K!i0lq7-x7{wqCLT
literal 2610
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%0A;iB%^m1SmX2R)T|)mO_=OpfG$uwQ
zZ2lre^T8<A%^9W>88(~qH8PdvXvv}=k7(O7N%G9X8_?HUTPtnb9=~0+sQN+!sVU~D
z(QtD$%M#dBc4s7Uxa2F80@{Y;pnwfBf(ayoKsH#NZ4l?GBZ(}j8Z8Bk*xFDc7dR7N
zigXdGbSB9XDvJGSb2Ov^PzSJm5b8!sN-(X|6^(&&_T7TVSh%k=P%NH6d^{-!6?BE@
zCs0zHp<u``2dzbBA{wKy3LGFjSeW5)AhZfGmZmB)a3Y>DR<m)T-rZ|Df#XW%z}Y)B
zTD#h~R_y>vz#IwHjk1IuqXZBf53sO0WD}4UFleS?z(Ntm49M9Sya0rXZ_iE%rr1a)
z8lk;>l@#Wwd}pPc0~t6EhXEj}Z#C_dQ0{Dnr;CDI5TZmOcA%UkP^lp~0=_3D6AS?{
zNUad09kG6J_>e3V!J`C0hdr}pV1gLkMa|uCCesDLqE1$Y3Ev9*fdmyx47t6KR-lb6
zt3<%aOJpoSKq1%wHjHLRAX>MHXBN6TP-aJ&RTSmadJ4WP&`=DD8H1<5L9R@wQvftn
zUdKjSA@8zs#6PROyQqK%#k-J;vC#qjy+D{zpL$#nmQL-QN5n$iK?x3#I1j!hR_|({
z)rog>c#1|90hXGGFg(RuW_hd^R#mKQq=yAKAO$IvB`eLxQRm%Qt5XtchICFlH*PWn
zh-Ct4<T5;BH6pfguU6-p>_H(`;ex|j9<J7@rWatw1%W(4h{s~H6{43y0|_c67EVQg
z?0F=9)n(Yoh1J;#`}&;Nvv{WWJp2<@crgLu1rv^Bk?R|UbX>>b101kIgn{;2B+5WV
zV<G#Zf{%8NvSpL96hMaZGP~M{1g4?`2V|Bfnz03PEQg;^ZmFQAij51MvYP_CQ3IJS
zJ$cdQ>NYuew{~*3A)>#u#lyMAv#>}d>M$`}hN8xwv^X%#&w7Z}5DXO#Bc0AJEv#E#
U>N+XBdf)MPBvXY60l*Y`5Iq`tpa1{>
diff --git a/tests/testfile-backtrace-demangle.cc b/tests/testfile-backtrace-demangle.cc
index 6daa429..27fff68 100644
--- a/tests/testfile-backtrace-demangle.cc
+++ b/tests/testfile-backtrace-demangle.cc
@@ -21,7 +21,7 @@
#define NOINLINE_NOCLONE __attribute__ ((noinline))
#endif
-static void NOINLINE_NOCLONE
+void NOINLINE_NOCLONE
cxxfunc (int i)
{
*(volatile int *)0=0;
@@ -31,7 +31,7 @@ cxxfunc (int i)
extern "C"
{
- static void NOINLINE_NOCLONE
+ void NOINLINE_NOCLONE
f (void)
{
cxxfunc(1);
diff --git a/tests/testfile-backtrace-demangle.core.bz2 b/tests/testfile-backtrace-demangle.core.bz2
index c68edce1fd41339a3968a960696c85a15fa4925e..263c3049f782468ef2570e83a198aa7212f2edca 100644
GIT binary patch
literal 39510
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%0D4)$#ij|i
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
X_d!10{6bF=|M7PuQ-uiw&ujS*tpM!s
literal 40629
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®v{f>*zSB#(&?HY)Mtdl
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
WnsP~Xq0hH1aSYvoehPg6ng0VF)?5Jq
--
1.9.0
9 years, 4 months
[PATCH] libdwfl: Don't leak fd on error in linux-proc-maps.c (grovel_auxv).
by Mark Wielaard
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
libdwfl/ChangeLog | 4 ++++
libdwfl/linux-proc-maps.c | 6 +++++-
2 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index 2cf0752..2fd2a1a 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-15 Mark Wielaard <mjw(a)redhat.com>
+
+ * linux-proc-maps.c (grovel_auxv): Close fd on error.
+
2014-05-02 Mark Wielaard <mjw(a)redhat.com>
* dwfl_module_getdwarf: Remove ENABLE_DWZ ifdefs so find_debug_altlink
diff --git a/libdwfl/linux-proc-maps.c b/libdwfl/linux-proc-maps.c
index b6620ac..d085834 100644
--- a/libdwfl/linux-proc-maps.c
+++ b/libdwfl/linux-proc-maps.c
@@ -116,7 +116,11 @@ grovel_auxv (pid_t pid, Dwfl *dwfl, GElf_Addr *sysinfo_ehdr)
eu_static_assert (sizeof d.a64 == sizeof d.a32);
nread = pread_retry (fd, d.a64, sizeof d.a64, offset);
if (nread < 0)
- return errno;
+ {
+ int ret = errno;
+ close (fd);
+ return ret;
+ }
for (size_t a32i = 0; a32i < nread / sizeof d.a32[0]; a32i++)
{
const Elf32_auxv_t *a32 = d.a32 + a32i;
--
1.7.1
9 years, 4 months
Help with getting CFA for split debuginfo files
by Sukadev Bhattiprolu
We are trying to write a function on PowerPC, that, given a filename
(ELF binary) and PC (program counter), returns:
- 0 if the return address at the given PC is saved on stack,
- 1 if the RA is still in LR and no new frame was allocated
- 2 if a RA is in LR but new frame was allocated and yet to
be used.
Referring to 'elfutils.git/tests/addrcfi.c', we wrote this program
that seems to work (i.e is consistent with 'readelf -wF) for a single
a.out file:
Eg:
$ readelf -wF ./crc5
---- <snip>
Contents of the .debug_frame section:
00000000 0000000c ffffffff CIE "" cf=4 df=-8 ra=65
LOC CFA
0000000000000000 r1+0
00000010 00000024 00000000 FDE cie=00000000 pc=10000ca4..10000d04
LOC CFA r31 ra
0000000010000ca4 r1+0 u u
>>>> 0000000010000cb4 r1+128 c-8 c+16
0000000010000cb8 r31+128 c-8 c+16
0000000010000ce8 r1+0 c-8 c+16
---- <snip>
$ ./crc5 0000000010000cb0 0000000010000cb4 ./crc5
Ret Address 0x10000cb0 is in LR
Ret Address 0x10000cb1 is in LR
Ret Address 0x10000cb2 is in LR
Ret Address 0x10000cb3 is in LR
Ret Address 0x10000cb4 is NOT in LR
i.e for PC 0x10000cb3, return address is in LR, and for PC 0x10000cb4
return address is on the stack (c1+16).
But I am not sure how to extend the code to work with PC value that points
to, say __random(), in glibc.
I have these installed:
glibc-common-2.18-11.fc20.ppc64p7
glibc-2.18-11.fc20.ppc64p7
glibc-headers-2.18-11.fc20.ppc64p7
glibc-debuginfo-common-2.18-11.fc20.ppc64p7
glibc-devel-2.18-11.fc20.ppc64p7
glibc-debuginfo-2.18-11.fc20.ppc64p7
$ objdump -D /usr/lib64/libc-2.18.so
....
00000080a7be3bf0 <.__random>:
80a7be3bf0: 7c 08 02 a6 mflr r0
80a7be3bf4: fb e1 ff f8 std r31,-8(r1)
80a7be3bf8: 60 00 00 00 nop
80a7be3bfc: 39 00 00 01 li r8,1
80a7be3c00: 3b e2 9a f0 addi r31,r2,-25872
80a7be3c04: 39 40 00 00 li r10,0
80a7be3c08: f8 01 00 10 std r0,16(r1)
80a7be3c0c: f8 21 ff 71 stdu r1,-144(r1)
80a7be3c10: 7d 20 f8 29 lwarx r9,0,r31,1
80a7be3c14: 7c 09 50 00 cmpw r9,r10
80a7be3c18: 40 82 00 0c bne 80a7be3c24 <.__random+0x34>
80a7be3c1c: 7d 00 f9 2d stwcx. r8,0,r31
>>>> 80a7be3c20: 40 c2 ff f0 bne- 80a7be3c10 <.__random+0x20>
....
$ ./crc5 80a7be3c20 80a7be3c20 /usr/lib64/libc-2.18.so
Error dwarf_cfi_addrframe(): : no matching address range
Error with addr 0x80a7be3c20
$ ./crc5 80a7be3c20 80a7be3c20 /usr/lib/debug/lib64/libc.so.6.debug
Error dwfl_addrmodule: no error
Error with addr 0x80a7be3c20
Pls find the code attached. Appreciate any comments on how to extend it
to work with split debug info files.
Sukadev
9 years, 4 months
[PATCH v3 0/6] Flexible .gnu_debugaltlink handling
by Florian Weimer
This patch series introduces a couple of new interfaces to enable
callers to supply alternate debuginfo data which is not present in the
expected file system locations.
Florian Weimer (6):
dwarf_elf_begin: Add .gnu_debugaltlink to the sectiondata array
libdw: Add dwarf_getalt, dwarf_setalt
libdwelf: Add dwelf_dwarf_gnu_debugaltlink
tests/allfcts.c: Install alternate debug information
Move .gnu_debugaltlink handling from libdw to libdwfl
Update NEWS
ChangeLog | 4 +
NEWS | 8 +-
libdw/ChangeLog | 21 ++++++
libdw/Makefile.am | 3 +-
libdw/dwarf_begin_elf.c | 129 +-------------------------------
libdw/dwarf_getalt.c | 42 +++++++++++
libdw/dwarf_setalt.c | 43 +++++++++++
libdw/libdw.h | 9 +++
libdw/libdw.map | 3 +
libdw/libdwP.h | 3 +
libdwelf/ChangeLog | 8 ++
libdwelf/Makefile.am | 2 +-
libdwelf/dwelf_dwarf_gnu_debugaltlink.c | 57 ++++++++++++++
libdwelf/libdwelf.h | 11 +++
libdwelf/libdwelfP.h | 1 +
libdwfl/ChangeLog | 8 ++
libdwfl/dwfl_module_getdwarf.c | 120 +++++++++++++++++++++++++++++
tests/ChangeLog | 11 +++
tests/Makefile.am | 5 +-
tests/allfcts.c | 30 +++++++-
tests/debugaltlink.c | 77 +++++++++++++++++++
tests/run-debugaltlink.sh | 34 +++++++++
22 files changed, 497 insertions(+), 132 deletions(-)
create mode 100644 libdw/dwarf_getalt.c
create mode 100644 libdw/dwarf_setalt.c
create mode 100644 libdwelf/dwelf_dwarf_gnu_debugaltlink.c
create mode 100644 tests/debugaltlink.c
create mode 100755 tests/run-debugaltlink.sh
--
1.9.0
9 years, 4 months