Re: [PATCH] gx-suspmod: fix "&& 0xff" typo

From: Willy Tarreau
Date: Wed Nov 08 2006 - 23:25:34 EST


On Wed, Nov 08, 2006 at 05:50:07PM -0500, Dave Jones wrote:
> On Thu, Nov 09, 2006 at 01:20:46AM +0300, Alexey Dobriyan wrote:
> > > > > - params->pci_rev = class_rev && 0xff;
> > > > > + params->pci_rev = class_rev & 0xff;
> > > >
> > > > Hi,
> > > > any kind of automated detection on that one?
> > >
> > > grep -r "&& 0x" . seems to be pretty effective modulo
> > > some false-positives.
> >
> > Obligatory nit-picking:
> >
> > grep '&&[ ]*0[xX][fF]' -r .
>
> That misses some cases. Like..
>
> drivers/char/ipmi/ipmi_msghandler.c: bmc->id.device_revision && 0x80 >> 7);
> drivers/char/ipmi/ipmi_msghandler.c: bmc->id.device_revision && 0x0F);

Interesting grep. I found that cmpci, gdth, net1080 and nv_setup are affected
too in my rather old 2.6.18-rc4 tree. More importantly, I found a few ones in
2.4 that I will have to address.

Thanks guys for the good idea. Once again, it shows that pure code review
would considerably help finding such bugs.

Cheers,
Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/