aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2016-01-04 02:54:51 -0500
committerMichael S. Tsirkin <mst@redhat.com>2016-01-12 13:47:07 -0500
commitf4073b0f6e11a5436d1162c623401c8f2f7cf783 (patch)
tree20e2f01b25e174a6dfdd6720693d2fd1f10f1dc2 /scripts
parent402c2553a24729688ba32453a9f6889e12754147 (diff)
checkpatch: check for __smp outside barrier.h
Introduction of __smp barriers cleans up a bunch of duplicate code, but it gives people an additional handle onto a "new" set of barriers - just because they're prefixed with __* unfortunately doesn't stop anyone from using it (as happened with other arch stuff before.) Add a checkpatch test so it will trigger a warning. Reported-by: Russell King <linux@arm.linux.org.uk> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Julian Calaby <julian.calaby@gmail.com> Acked-by: Joe Perches <joe@perches.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/checkpatch.pl10
1 files changed, 10 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 94b4e33fa532..25476c29bb18 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -5143,6 +5143,16 @@ sub process {
5143 } 5143 }
5144 } 5144 }
5145 5145
5146 my $underscore_smp_barriers = qr{__smp_(?:$barrier_stems)}x;
5147
5148 if ($realfile !~ m@^include/asm-generic/@ &&
5149 $realfile !~ m@/barrier\.h$@ &&
5150 $line =~ m/\b(?:$underscore_smp_barriers)\s*\(/ &&
5151 $line !~ m/^.\s*\#\s*define\s+(?:$underscore_smp_barriers)\s*\(/) {
5152 WARN("MEMORY_BARRIER",
5153 "__smp memory barriers shouldn't be used outside barrier.h and asm-generic\n" . $herecurr);
5154 }
5155
5146# check for waitqueue_active without a comment. 5156# check for waitqueue_active without a comment.
5147 if ($line =~ /\bwaitqueue_active\s*\(/) { 5157 if ($line =~ /\bwaitqueue_active\s*\(/) {
5148 if (!ctx_has_comment($first_line, $linenr)) { 5158 if (!ctx_has_comment($first_line, $linenr)) {