Messages in this thread | | | Date | Thu, 17 Mar 2011 14:11:08 -0700 | From | Andrew Morton <> | Subject | Re: make checkpatch warn about memset with swapped arguments. |
| |
On Thu, 17 Mar 2011 16:37:04 -0400 Steven Rostedt <rostedt@goodmis.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".
| |