aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/checkpatch.pl
diff options
context:
space:
mode:
authorAndy Whitcroft <apw@shadowen.org>2009-01-06 17:41:16 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2009-01-06 18:59:15 -0500
commit691d77b6b85c20e4166bafd12bd0131b28f95a16 (patch)
treeb7c8950fadd6d3cf3a949d3977597cd0388544e8 /scripts/checkpatch.pl
parent94e2959e7a6a4ef0969932c30349ce6f4469a3cf (diff)
checkpatch: add checks for in_atomic()
in_atomic() is not for driver use so report any such use as an ERROR. Also in_atomic() is often used to determine if we may sleep, but it is not reliable in this use model therefore strongly discourage its use. Signed-off-by: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts/checkpatch.pl')
-rwxr-xr-xscripts/checkpatch.pl9
1 files changed, 9 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index f88bb3e21cda..826cdbac0114 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2466,6 +2466,15 @@ sub process {
2466 last; 2466 last;
2467 } 2467 }
2468 } 2468 }
2469
2470# whine mightly about in_atomic
2471 if ($line =~ /\bin_atomic\s*\(/) {
2472 if ($realfile =~ m@^drivers/@) {
2473 ERROR("do not use in_atomic in drivers\n" . $herecurr);
2474 } else {
2475 WARN("use of in_atomic() is incorrect outside core kernel code\n" . $herecurr);
2476 }
2477 }
2469 } 2478 }
2470 2479
2471 # If we have no input at all, then there is nothing to report on 2480 # If we have no input at all, then there is nothing to report on