Hi, /sys/i386/conf/GENERIC has this line uncommented - is this on purpose? I commented it out before building a new kernel. makeoptions DEBUG=-g Cheers, Simon
Hi, Simon, On 11/14/05, Simon Ironside <sironside@interfone.net> wrote:> Hi, > > /sys/i386/conf/GENERIC has this line uncommented - is this on purpose? I > commented it out before building a new kernel. > > makeoptions DEBUG=-gI think this is intentional. Having DEBUG=-g means that you have a kernel.debug which contains debugging symbols, which is quite useful if you get a kernel panic and want to report it back. On the other hand, debugging symbols would be stripped before you install a new kernel so it does not affect the running kernel. Cheers, -- Xin LI <delphij@delphij.net> http://www.delphij.net
Hello,> I think this is intentional. Having DEBUG=-g means that you have a > kernel.debug which contains debugging symbols, which is quite useful > if you get a kernel panic and want to report it back. On the other > hand, debugging symbols would be stripped before you install a new > kernel so it does not affect the running kernel.This has changed since 5.4 - I just wondered why and whether I would be best leaving it as is or commenting it out. Simon
On 11/14/05, Simon Ironside <sironside@interfone.net> wrote: [snip]> This has changed since 5.4 - I just wondered why and whether I would be > best leaving it as is or commenting it out.My personal suggestion would be that you keep it as-is, since it saves your time when you have kernel panics and wants someone to quickly address the bug without having to crash your system for a second time to get the backtrace =-) Cheers, -- Xin LI <delphij@delphij.net> http://www.delphij.net
safe to leave un-commented no hindrance in performance. On Mon, 2005-11-14 at 08:53 +0000, Simon Ironside wrote:> Hello, > > > I think this is intentional. Having DEBUG=-g means that you have a > > kernel.debug which contains debugging symbols, which is quite useful > > if you get a kernel panic and want to report it back. On the other > > hand, debugging symbols would be stripped before you install a new > > kernel so it does not affect the running kernel. > > This has changed since 5.4 - I just wondered why and whether I would be > best leaving it as is or commenting it out. > > Simon > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org"
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=-gThis 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. 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