summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2013-02-21 16:44:18 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2013-02-21 17:22:26 -0800
commit5ce59ae0bcc0f0ad249d21560c9bb5f6061e62a8 (patch)
tree1fa6ddc462a2425d6d8d50136330c2db0b6becee /scripts
parente8eb3997ce2f5887472a674b32f295b0196ecf46 (diff)
downloadlwn-5ce59ae0bcc0f0ad249d21560c9bb5f6061e62a8.tar.gz
lwn-5ce59ae0bcc0f0ad249d21560c9bb5f6061e62a8.zip
checkpatch: Add check for kcalloc argument order
kcalloc is sometimes misused with the first and second arguments switched. Same issue with kmalloc_array too. Bleat if sizeof is the first argument Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/checkpatch.pl6
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 2c50eb4c4e66..7b40a3f729a7 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -3476,6 +3476,12 @@ sub process {
"unnecessary cast may hide bugs, see http://c-faq.com/malloc/mallocnocast.html\n" . $herecurr);
}
+# check for alloc argument mismatch
+ if ($line =~ /\b(kcalloc|kmalloc_array)\s*\(\s*sizeof\b/) {
+ WARN("ALLOC_ARRAY_ARGS",
+ "$1 uses number as first arg, sizeof is generally wrong\n" . $herecurr);
+ }
+
# check for multiple semicolons
if ($line =~ /;\s*;\s*$/) {
WARN("ONE_SEMICOLON",