Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Nov 2010 14:17:27 -0500
From:      Mark Johnston <markjdb@gmail.com>
To:        Erik Cederstrand <erik@cederstrand.dk>
Cc:        FreeBSD Hackers <hackers@FreeBSD.org>
Subject:   Re: Deterministic builds, part 2
Message-ID:  <20101125191727.GB1342@mark-laptop-bsd.mark-home>
In-Reply-To: <93FA0AC7-704D-4EB4-A163-FDD8AC915630@cederstrand.dk>
References:  <93FA0AC7-704D-4EB4-A163-FDD8AC915630@cederstrand.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Nov 25, 2010 at 01:08:58PM +0100, Erik Cederstrand wrote:
> Kernel modules:
> ----------------------
> In the ELF section .gnu-debuglink, there is a link to the corresponding *.ko.symbols file. It seems to be an inode or such rather than a file path since nothing shows up in strings(1). I have commented out "makeoptions DEBUG=-g" in the GENERIC kernel conf file which I am testing now, but I'd like to know what is actually going on.

The .gnu_debuglink segment contains the name of the debug symbols file
(i.e. not a full path or an inode number). I'm not sure why it doesn't
show up with strings(1), but you can see it with a hex editor.

When gdb loads an object file with a gnu_debuglink segment, it looks in
a few pre-defined locations for the corresponding symbols file. The gdb
docs explain it pretty well:

http://sourceware.org/gdb/onlinedocs/gdb/Separate-Debug-Files.html

-Mark




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20101125191727.GB1342>