Robert Watson wrote:

On Mon, 14 Nov 2005, Simon Ironside wrote:

/sys/i386/conf/GENERIC has this line uncommented - is this on purpose? I commented it out before building a new kernel.

makeoptions DEBUG=-g


This was by accident, but actually isn't a bad idea. We discovered the problem at the last minute, after the 6.0-R builds had completed, and as they were rsyncing to mirrors. After thinking about it for a few minutes, we decided that actually, it has some nice benefits that made it worth not rebuilding and re-mirroring. If we were earlier in the release cycle, we might have changed the setting, however.

We identified a few specific upsides and downsides:

Good: We now have debugging symbols easily available and widely accessible for the GENERIC kernel shipped with the release. This makes it much easier for developers to debug problems using that kernel, as we no longer need to ask end-users to build a kernel with debugging symbols, etc, in order to debug a problem. Especially for a .0 release, this is a very useful, and has presented a problem in previous releases.

Bad: Kernel build times are now significantly slower, and required space to build a kernel significantly larger by default.

We'll see how it settles out -- CPUs are a lot larger, and disks a lot bigger than they used to be. The kernel is stripped of debugging symbols before it is installed, so this is only potentially a problem on systems that already have enough space to hold source, builds, etc, and doesn't affect systems where the kernel is installed but not built. I.e., this doesn't affect the footprint for embedded systems, or systems where a kernel is built centrally and then distributed.

My recommendation would be to leave -g in unless you know that the added build time and disk space for the build process will be a problem for you.

If I were to decide to remove this, and I have a small config file which includes GENERIC, what directive would I use. For example, with a device I wish to remove I can use nodevice... for options, nooptions. nomakeoptions maybe?

Also... I once saw someone ask this and never saw a reply....
Where can I find documentation of the above mentioned mechanism?

Thanks.

Hopefully you don't ever run into any problems requiring debug symbols, but if you do it will probably save you some time and hassle, especially if it's a problem that occurs once every six months, in which case rebooting with a kernel with known symbol layout will mean waiting six months to debug the problem. :-)

Robert N M Watson
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"



--
Regards,
Eric
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to