[alsa-devel] wrong print debugging message code
Takashi Iwai
tiwai at suse.de
Mon Jun 23 12:55:57 CEST 2008
At Sat, 21 Jun 2008 14:44:47 +0900,
Jin-Young Park wrote:
>
> Hello,
>
> I written ASoC Audio driver for our company chip in linux kernel 2.6.24.1.
> New kernel 2.6.25.7 released before several days.
> So, I merge my ASoC Audio dirver to kernel 2.6.25.7.
> then I found wrong code that print debuuging message code in several files.
> These file location is kernel_src/sound/soc/codecs for SoC audio codec
> drvier files
>
> These files include follow define code for print debug message.
>
> ------------------------------------------------------------------------------------------------------------------------
> #define XXXX_DEBUG 0
>
> #ifdef XXXX_DEBUG
> #define dbg(format, arg...) \
> printk(KERN_DEBUG AUDIO_NAME ": " format "\n" , ## arg)
> #else
> #define dbg(format, arg...) do {} while (0)
> #endif
> ------------------------------------------------------------------------------------------------------------------------
>
> I think "#ifdef XXXX_DEBUG" line is wrong. Because, XXXX_DEBUG was already
> defined 0.
> I known that "#ifdef" is only check defined or not defined, 0 or 1(false or
> true) are not check.
> "#if XXXX_DEBUG" code is more correct than "#ifdef XXXX_DEBUG".
#ifdef XXX_DEBUG is more common than #if XXX_DEBUG in the kernel
tree. So, I'd suggest to keep #ifdef style.
The confusing thing is that it defines to '0' (and I'm not sure the
debug is activated as default in the current code -- Mark, Liam, is it
intentional?).
IMO, the debug should be basically off as default, and if enabled, it
should be defined to '1'.
Takashi
More information about the Alsa-devel
mailing list