Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1511112

[PATCH] scripts/checkpatch: Check for Reviewed-by under --strict

From Chris Wilson <chris@chris-wilson.co.uk>
Newsgroups linux.kernel
Subject [PATCH] scripts/checkpatch: Check for Reviewed-by under --strict
Date 2016-10-28 14:50 +0200
Message-ID <sxeLE-8o2-5@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Some subsystem polices have a strict requirement that every patch must
have at least one reviewer before being approved for upstream. Since
encouraging review is good policy (great review is even better policy!)
enforce checking for a Reviewed-by when checkpath is run with --strict
(or with --review).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Andy Whitcroft <apw@canonical.com>
Cc: Joe Perches <joe@perches.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
 scripts/checkpatch.pl | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index a8368d1c4348..9eaa5a4fbbc0 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -21,6 +21,7 @@ use Getopt::Long qw(:config no_auto_abbrev);
 my $quiet = 0;
 my $tree = 1;
 my $chk_signoff = 1;
+my $chk_review = 0;
 my $chk_patch = 1;
 my $tst_only;
 my $emacs = 0;
@@ -69,6 +70,7 @@ Options:
   -q, --quiet                quiet
   --no-tree                  run without a kernel tree
   --no-signoff               do not check for 'Signed-off-by' line
+  --review                   check for 'Reviewed-by' line
   --patch                    treat FILE as patchfile (default)
   --emacs                    emacs compile window format
   --terse                    one line per report
@@ -183,6 +185,7 @@ GetOptions(
 	'q|quiet+'	=> \$quiet,
 	'tree!'		=> \$tree,
 	'signoff!'	=> \$chk_signoff,
+	'review!'	=> \$chk_review,
 	'patch!'	=> \$chk_patch,
 	'emacs!'	=> \$emacs,
 	'terse!'	=> \$terse,
@@ -217,7 +220,7 @@ help(0) if ($help);
 
 list_types(0) if ($list_types);
 
-$fix = 1 if ($fix_inplace);
+$chk_review = 1 if ($check); # --strict implies checking for Reviewed-by
 $check_orig = $check;
 
 my $exit = 0;
@@ -857,6 +860,7 @@ sub git_commit_info {
 }
 
 $chk_signoff = 0 if ($file);
+$chk_review = 0 if ($file);
 
 my @rawlines = ();
 my @lines = ();
@@ -2130,6 +2134,7 @@ sub process {
 
 	our $clean = 1;
 	my $signoff = 0;
+	my $review = 0;
 	my $is_patch = 0;
 	my $in_header_lines = $file ? 0 : 1;
 	my $in_commit_log = 0;		#Scanning lines before patch
@@ -2400,6 +2405,12 @@ sub process {
 			$in_commit_log = 0;
 		}
 
+# Check the patch for any review:
+		if ($line =~ /^\s*reviewed-by:/i) {
+			$review++;
+			$in_commit_log = 0;
+		}
+
 # Check if MAINTAINERS is being updated.  If so, there's probably no need to
 # emit the "does MAINTAINERS need updating?" message on file add/move/delete
 		if ($line =~ /^\s*MAINTAINERS\s*\|/) {
@@ -6204,6 +6215,10 @@ sub process {
 		ERROR("MISSING_SIGN_OFF",
 		      "Missing Signed-off-by: line(s)\n");
 	}
+	if ($is_patch && $has_commit_log && $chk_review && $review == 0) {
+		ERROR("MISSING_REVIEW",
+		      "Missing Reviewed-by: line(s)\n");
+	}
 
 	print report_dump();
 	if ($summary && !($clean == 1 && $quiet == 1)) {
-- 
2.10.1

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH] scripts/checkpatch: Check for Reviewed-by under --strict Chris Wilson <chris@chris-wilson.co.uk> - 2016-10-28 14:50 +0200
  Re: [Intel-gfx] [PATCH] scripts/checkpatch: Check for Reviewed-by under        --strict Jani Nikula <jani.nikula@linux.intel.com> - 2016-10-28 15:40 +0200
    Re: [Intel-gfx] [PATCH] scripts/checkpatch: Check for Reviewed-by  under        --strict Chris Wilson <chris@chris-wilson.co.uk> - 2016-10-28 16:10 +0200
  Re: [PATCH] scripts/checkpatch: Check for Reviewed-by under --strict Joe Perches <joe@perches.com> - 2016-10-28 17:00 +0200

csiph-web