On 30/11/2012, at 17:46, Kevin Oberman <[email protected]> wrote: >> It would be Really Nice (tm) if they could be put into /usr instead since >> there is virtually no benefit to them being in / (since they are only used >> for debugging). > > I have long wondered why the kernel debug symbols were moved into > /kernel. The only thing I can come up with was the desire to retain > symbols for kernel.old, which the old system deleted. I'm not sure, > but I think the change was made when the symbols files were added for > all of the modules. I'd meed to dig back in the archived to track down > the change. > > In any case, it's hardly difficult to come up with a scheme for > keeping symbols for the current and old kernels and modules in /var or > /usr and keep / from exceeding a gig on an amd64 system. (No, it's not > there today, but it's disturbingly close.).
I seem to recall that last time I thought about this the main problem was keeping them in sync.. Perhaps if you hashed the kernel and then created /usr/..../kerneldbg/$hash/ and created a symlink in /boot/kernel/debug to /usr/..../kerneldbg/$hash Then the debug tools don't need to be much smarter to find them and they should never end up looking at incorrect data. A make target or some other tool to clean up old symbol directories might be needed though. > Moving the Linux emulation shadow root out of root would also help. Yes, a symlink from /compat to /usr/compat by default would work I think. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C
