* [Bug debuginfod/26599] New: eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't
@ 2020-09-11 10:12 fche at redhat dot com
2020-09-11 10:39 ` [Bug debuginfod/26599] " mark at klomp dot org
2020-09-15 13:46 ` mark at klomp dot org
0 siblings, 2 replies; 3+ messages in thread
From: fche at redhat dot com @ 2020-09-11 10:12 UTC (permalink / raw)
To: elfutils-devel
https://sourceware.org/bugzilla/show_bug.cgi?id=26599
Bug ID: 26599
Summary: eu-readelf -n works on /boot/vmlinuz-* but
debuginfod-find doesn't
Product: elfutils
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: debuginfod
Assignee: unassigned at sourceware dot org
Reporter: fche at redhat dot com
CC: elfutils-devel at sourceware dot org
Target Milestone: ---
eu-readelf appears to unwrap the bzImage header on a vmlinuz kernel file, and
can thus extract buildids, but debuginfod-find cannot:
% eu-readelf -n /lib/modules/5.7.15-200.fc32.x86_64/vmlinuz
[...]
GNU 20 GNU_BUILD_ID
Build ID: 8820b044b7717b53bd9a9795a1fbca152d2fae63
% debuginfod-find debuginfo /lib/modules/5.7.15-200.fc32.x86_64/vmlinuz
Cannot extract build-id from /lib/modules/5.7.15-200.fc32.x86_64/vmlinuz:
invalid `Elf' handle
It would be handy to teach debuginfod-find how to use the elfutils entry point
that unwraps bzImage.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug debuginfod/26599] eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't
2020-09-11 10:12 [Bug debuginfod/26599] New: eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't fche at redhat dot com
@ 2020-09-11 10:39 ` mark at klomp dot org
2020-09-15 13:46 ` mark at klomp dot org
1 sibling, 0 replies; 3+ messages in thread
From: mark at klomp dot org @ 2020-09-11 10:39 UTC (permalink / raw)
To: elfutils-devel
https://sourceware.org/bugzilla/show_bug.cgi?id=26599
Mark Wielaard <mark at klomp dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mark at klomp dot org
Status|NEW |ASSIGNED
--- Comment #1 from Mark Wielaard <mark at klomp dot org> ---
Only quickly tested patch, use dwelf_elf_begin:
/* Creates a read-only Elf handle from the given file handle. The
file may be compressed and/or contain a linux kernel image header,
in which case it is eagerly decompressed in full and the Elf handle
is created as if created with elf_memory (). On decompression or
file errors NULL is returned (and elf_errno will be set). If there
was no error, but the file is not an ELF file, then an ELF_K_NONE
Elf handle is returned (just like with elf_begin). The Elf handle
should be closed with elf_end (). The file handle will not be
closed. */
diff --git a/debuginfod/debuginfod-find.c b/debuginfod/debuginfod-find.c
index 83a43ce4..214256da 100644
--- a/debuginfod/debuginfod-find.c
+++ b/debuginfod/debuginfod-find.c
@@ -138,9 +138,10 @@ main(int argc, char** argv)
}
if (fd >= 0)
{
- elf = elf_begin (fd, ELF_C_READ_MMAP_PRIVATE, NULL);
+ elf = dwelf_elf_begin (fd);
if (elf == NULL)
- fprintf (stderr, "Cannot elf_begin %s: %s\n", build_id,
elf_errmsg(-1));
+ fprintf (stderr, "Cannot open as ELF file %s: %s\n", build_id,
+ elf_errmsg (-1));
}
if (elf != NULL)
{
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug debuginfod/26599] eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't
2020-09-11 10:12 [Bug debuginfod/26599] New: eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't fche at redhat dot com
2020-09-11 10:39 ` [Bug debuginfod/26599] " mark at klomp dot org
@ 2020-09-15 13:46 ` mark at klomp dot org
1 sibling, 0 replies; 3+ messages in thread
From: mark at klomp dot org @ 2020-09-15 13:46 UTC (permalink / raw)
To: elfutils-devel
https://sourceware.org/bugzilla/show_bug.cgi?id=26599
Mark Wielaard <mark at klomp dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|ASSIGNED |RESOLVED
--- Comment #2 from Mark Wielaard <mark at klomp dot org> ---
commit 0ba7476d36100c015c35c744e871c4e64d52154a
Author: Mark Wielaard <mark@klomp.org>
Date: Tue Sep 15 15:43:10 2020 +0200
debuginfod-find: Support compressed (kernel) ELF images.
By using dwelf_elf_begin instead of elf_begin we automatically get
support for determining the build-id of compressed (kernel) images.
https://sourceware.org/bugzilla/show_bug.cgi?id=26599
Signed-off-by: Mark Wielaard <mark@klomp.org>
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-09-15 13:46 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-11 10:12 [Bug debuginfod/26599] New: eu-readelf -n works on /boot/vmlinuz-* but debuginfod-find doesn't fche at redhat dot com
2020-09-11 10:39 ` [Bug debuginfod/26599] " mark at klomp dot org
2020-09-15 13:46 ` mark at klomp dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).