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>
This commit is contained in:
Andy Whitcroft 2009-01-06 14:41:16 -08:00 committed by Linus Torvalds
parent 94e2959e7a
commit 691d77b6b8

View file

@ -2466,6 +2466,15 @@ sub process {
last; last;
} }
} }
# whine mightly about in_atomic
if ($line =~ /\bin_atomic\s*\(/) {
if ($realfile =~ m@^drivers/@) {
ERROR("do not use in_atomic in drivers\n" . $herecurr);
} else {
WARN("use of in_atomic() is incorrect outside core kernel code\n" . $herecurr);
}
}
} }
# If we have no input at all, then there is nothing to report on # If we have no input at all, then there is nothing to report on