checkpatch: warn about memset with swapped arguments
authorDave Jones <davej@redhat.com>
Tue, 22 Mar 2011 23:34:44 +0000 (16:34 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 23 Mar 2011 00:44:15 +0000 (17:44 -0700)
Because the second and third arguments of memset have the same type, it
turns out to be really easy to mix them up.

This bug comes up time after time, so checkpatch should really be checking
for it at patch submission time.

Signed-off-by: Dave Jones <davej@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
scripts/checkpatch.pl

index 19abef2b4dd522a0cfa0f199a37078e055391fc1..8f9e394298cda6cb17edd29b5239d0a134732650 100755 (executable)
@@ -2902,6 +2902,11 @@ sub process {
                    $line =~ /DEVICE_ATTR.*S_IWUGO/ ) {
                        WARN("Exporting world writable files is usually an error. Consider more restrictive permissions.\n" . $herecurr);
                }
+
+               # Check for memset with swapped arguments
+               if ($line =~ /memset.*\,(\ |)(0x|)0(\ |0|)\);/) {
+                       ERROR("memset size is 3rd argument, not the second.\n" . $herecurr);
+               }
        }
 
        # If we have no input at all, then there is nothing to report on