diff options
author | Michael S. Tsirkin <mst@redhat.com> | 2016-01-04 02:54:51 -0500 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2016-01-12 13:47:07 -0500 |
commit | f4073b0f6e11a5436d1162c623401c8f2f7cf783 (patch) | |
tree | 20e2f01b25e174a6dfdd6720693d2fd1f10f1dc2 /scripts | |
parent | 402c2553a24729688ba32453a9f6889e12754147 (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-x | scripts/checkpatch.pl | 10 |
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)) { |