[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110317141108.52697d81.akpm@linux-foundation.org>
Date: Thu, 17 Mar 2011 14:11:08 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Dave Jones <davej@...hat.com>,
Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: make checkpatch warn about memset with swapped arguments.
On Thu, 17 Mar 2011 16:37:04 -0400
Steven Rostedt <rostedt@...dmis.org> wrote:
> On Thu, 2011-03-17 at 16:02 -0400, Dave Jones wrote:
> > On Thu, Mar 17, 2011 at 03:36:45PM -0400, Steven Rostedt wrote:
> >
> > > > + if ($line =~ /memset.*\,(\ |)(0x|)0(\ |0|)\);/) {
> > >
> > > Wouldn't this be a better regex:
> > >
> > > if ($line =~ /memset.*\,\s*(0x)?0\s*\)\s*;/)
> >
> > I dunno, regexps are all gobble-de-gook to me. Why is it better ?
>
> :) I love regex :)
>
> But the reason for better is more robust. This will catch other bad
> things users may do, like having tabs and such instead of spaces. Or
> they may have more than one space. Although this should be caught by
> other errors or warnings in checkpatch.
>
> \s stands for any whitespace,
> so ",\s*x" is ,[any-amount-of-white-space]x"
>
> The (0x)? is common for (0x|) in perl, but either is fine. I'm just use
> to the '?' one.
>
Dave's patch is tested (I assume), so it wins ;)
Maybe it's just me, but I think it would be better to use bzero() for
this operation - it's more readable and it can't be screwed up. Then
checkpatch checks for memset(xxx, 0, xxx) and for memset(xxx, xxx, 0)
and says "hey, use bzero".
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists