Commit 1e85572697b348b1a126520349a29654f2ae6a12
Committed by
Linus Torvalds
1 parent
2a5a2c2522
Exists in
master
and in
4 other branches
checkpatch: Add warning for p0-patches
Some people work internally with -p0-patches which has the danger that one forgets to convert them to -p1 before mainlining. Bitten myself and seen p0-patches in mailing lists occasionally, this patch adds a warning to checkpatch.pl in case a patch is -p0. If you really want, you can fool this check to generate false positives, this is why it just spits a warning. Making the check 100% proof is trickier than it looks, so let's start with a version which catches the cases of real use. [apw@canonical.com: update message language, handle null prefix, add tests] Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Andy Whitcroft <apw@canonical.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Showing 1 changed file with 7 additions and 1 deletions Side-by-side Diff
scripts/checkpatch.pl
... | ... | @@ -1057,6 +1057,7 @@ |
1057 | 1057 | my $in_comment = 0; |
1058 | 1058 | my $comment_edge = 0; |
1059 | 1059 | my $first_line = 0; |
1060 | + my $p1_prefix = ''; | |
1060 | 1061 | |
1061 | 1062 | my $prev_values = 'E'; |
1062 | 1063 | |
... | ... | @@ -1205,7 +1206,12 @@ |
1205 | 1206 | # extract the filename as it passes |
1206 | 1207 | if ($line=~/^\+\+\+\s+(\S+)/) { |
1207 | 1208 | $realfile = $1; |
1208 | - $realfile =~ s@^[^/]*/@@; | |
1209 | + $realfile =~ s@^([^/]*)/@@; | |
1210 | + | |
1211 | + $p1_prefix = $1; | |
1212 | + if ($tree && $p1_prefix ne '' && -e "$root/$p1_prefix") { | |
1213 | + WARN("patch prefix '$p1_prefix' exists, appears to be a -p0 patch\n"); | |
1214 | + } | |
1209 | 1215 | |
1210 | 1216 | if ($realfile =~ m@^include/asm/@) { |
1211 | 1217 | ERROR("do not modify files in include/asm, change architecture specific files in include/asm-<architecture>\n" . "$here$rawline\n"); |