PERFORCE change 48556 for review
juli mallett
jmallett at FreeBSD.org
Wed Mar 10 09:24:27 PST 2004
* Marcel Moolenaar <marcel at xcllnt.net> [ Date: 2004-03-10 ]
[ w.r.t. Re: PERFORCE change 48556 for review ]
> On Wed, Mar 10, 2004 at 09:17:22AM +0100, Poul-Henning Kamp wrote:
> > In message <200403100801.i2A810eC071863 at repoman.freebsd.org>, Marcel Moolenaar
> > > Note that most #ifdef DDB instances have to be replaced
> > > with #ifdef DEBUG, because DDB is specific to a single
> > > back-end, not to having debugging support in general. A
> > > new option, GDB, has been added to add support for gdb.
> > > This has to be worked-out still.
> >
> > #ifdef DEBUG is a singulary bad choice since much code have private
> > use of that macro.
>
> The point of using a define is to be able to get rid of the debugger
> calls in production systems. It doesn't matter if DEBUG has private
> meaning as long as it relates to having debugging code. Other than
> that, anything else is fine too, as long as it's not DDB.
I disagree. What if you are defining DEBUG and a file was once:
#if DEBUG
/* Ignore privlege elevation checks or something similarly
* dangerous, in the hopes of figuring out what's going on
* and then leave the system in a useless state so I can
* debug my own code.
*/
#endif
#if DDB
/* For the average user, just show a warning and backtrace
* to show me.
*/
#endif
What PHK means is "#if DEBUG" is other people's macro, it's ambiguous,
and it's not necessarily the sort of debugging you want to enable. As
long as you're running with "kdb" why not:
#if KDB
#if KERNEL_DEBUGGER
#if KERNEL_DEBUGGING
#if KDEBUGGER
--
juli mallett. jmallett at freebsd.org. adrift in the pacific.
More information about the p4-projects
mailing list