Re: [Bug 13519] New: Syntax error. Not enough parameters for macro 'qla_printk'.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jun 12, 2009 at 12:25:13PM +0000, bugzilla-daemon@xxxxxxxxxxxxxxxxxxx wrote:
> i have detected a wrong macro call in file qla_sup.c. To detect this issue i
> used the static code analysis tool cppcheck. It prints the following output:
> 
> [linux-2.6.30/drivers/scsi/qla2xxx/qla_sup.c:352]: (error) Syntax error. Not
> enough parameters for macro 'qla_printk'.
> 
> Take a look at file qla_sup.c line 352 
> 
>                 DEBUG9_10(qla_printk(
>                     "NVRAM didn't go ready...\n"));
> 
> 
> The maro definition is in file qla_def.h (2657):
> 
> #define qla_printk(level, ha, format, arg...) \
>     dev_printk(level , &((ha)->pdev->dev) , format , ## arg)
> 
> As you can see, it needs more than one parameter.

I believe your tool is defective.  As I understand the way variadic
macros work, if there is no 'arg', the ## operator swallows up the
preceeding symbol (ie the ',') and so you'll get:

	dev_printk(level , &((ha)->pdev->dev) , format);

which is perfectly fine.

-- 
Matthew Wilcox				Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours.  We can't possibly take such
a retrograde step."
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux