public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
* "inconsistent kernel build-id" message
@ 2009-04-17  0:52 Roland McGrath
  0 siblings, 0 replies; only message in thread
From: Roland McGrath @ 2009-04-17  0:52 UTC (permalink / raw)
  To: systemtap

I don't think "byte #0 (0x6d [actual] vs. 0xbb [debuginfo])" is usefully
informative in the "inconsistent kernel build-id" message.  Modulo bugs
in the translator side (stap/libdwfl), byte-by-byte contemplation of a
build ID is utterly meaningless to everyone.  What people ever see and
can make use of is the whole ID in hex (as from eu-readelf -n,
eu-unstrip -n).

A useful message (though a bit longer) would be:

build ID mismatch: "kernel" d055e788c855fb5196f9d73b26d4ba45388b7019 != ".../vmlinux" f1d823a6d25d0774febaf7d8f3b14eb1d7625e24

where "kernel" is replaced by the short module name as used in the
script et al ("nfs", "libc.so", etc.) and ".../vmlinux" is replaced by
the main ELF file name (from libdwfl) that the translator consulted.
(Might as well use this vs debug file name, shorter and just as
normative.  OTOH, one day it's likely the debug file name for canonical
rpm packaging will encode the rpm package name/version obviously to the
eyeball so perhaps that's a better choice.  But if you used symbol-only,
you might have just a main file and not a debug file.)

That points directly at the file used, which makes it obvious if it's
just the wrong kernel binary or suchlike.  The full ID makes it possible
both to easily compare by hand (eu-unstrip -n -e foo, etc.) for sanity
checking, and (one day) to feed easily into some handy "wtf is this
build ID from" tool.  (e.g. in Fedora, a front-end for repoquery -f
/usr/lib/debug/.build-id/xx/yyy or suchlike.)


Thanks,
Roland

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-04-17  0:52 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-17  0:52 "inconsistent kernel build-id" message Roland McGrath

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).