Date: Fri, 31 Oct 2014 12:53:09 +0800 From: Julian Elischer <julian@freebsd.org> To: Garance A Drosehn <drosih@rpi.edu>, Ed Maste <emaste@freebsd.org> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: HEADS UP: Standalone kernel debug files moving out of /boot/kernel/ Message-ID: <545315B5.503@freebsd.org> In-Reply-To: <AF63F563-AAB9-4D2F-A061-1F4DB984F1AF@rpi.edu> References: <CAPyFy2APVUxpAztmWY-ux7gUZ7B8Qk65CLHV_fVYmxsazKgCPg@mail.gmail.com> <54511A7E.1020307@multiplay.co.uk> <20141030062026.GC8852@funkthat.com> <CAPyFy2DyDFz4ng2UMGz8WG=1NdDo9YbXo_4zWZdVV=4onY3poQ@mail.gmail.com> <AF63F563-AAB9-4D2F-A061-1F4DB984F1AF@rpi.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/31/14, 1:41 AM, Garance A Drosehn wrote: > On 30 Oct 2014, at 12:49, Ed Maste wrote: > >> On 30 October 2014 02:20, John-Mark Gurney <jmg@funkthat.com> wrote: >>> Oh, make sure that make install (or installkernel) properly handles >>> moving the debug data too... i.e. kernel to kernel.old... >> Yes, in the case that /boot/kernel is moved to /boot/kernel.old >> /usr/lib/debug/boot/kernel is moved to /usr/lib/debug/boot/kernel.old. > I definitely like the idea of moving the debug symbols out to /usr/lib/debug > > I'm another person who sometimes has multiple kernels sitting in /boot > (which is one reason I'd like the debug symbols elsewhere!). I may > shuffle those around by hand, and I'm sure I won't remember to shuffle > around information under /usr/lib/debug. I also do things like > cp -rp kernel kernel-PreBigChange > where I save away a copy of the kernel for possible fallback (at some > unknown future date), but I wouldn't need two copies of the debug info. > > When we build a kernel, could we tag it with some unique-ID (by putting > that ID in a plain-text file inside the kernel's directory), and then > that unique-ID could be used for finding the correct debug info under > /usr/lib/debug? This way we wouldn't need to move around any of the > debug info under /usr/lib/debug. And we could tell which sets of > debug info should be removed by comparing the existing sets of debug > info with the kernel-unique-ID's which still exist under /boot. I'd put the debug symbls somewhere with a unique name and than add a symlink from the installed directory.. (and an ID file) So /boot/kernel.old/symbols points to /usr/lib/debug/kernelsymbols.20141031,1250 when you move the directory back to /boot/kernel, it STILL points to the right place.. occasionally remove all directories in /usr/lib/debug/kernelsymbols.* that are not pointed to by a symlink in /boot/*/symbols. An option could make the symlink relative for chroot/jail/nfs issues.. > > If debug tools need to have the debug-info for the booted kernel to > be in a fixed location, then maybe the boot-up process could create > a symlink from some fixed pathname to the correct debug info for the > kernel which the system booted up on. >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?545315B5.503>