On Thu, 2017-12-07 at 11:59 +1100, Tobin C. Harding wrote: > Recently signature tag Co-Developed-by was added to the > kernel (Documentation/process/5.Posting.rst). checkpatch.pl doesn't know > about it yet. All prior tags used all lowercase characters except for first > character. Checks for this format had to be re-worked to allow for the > new tag. > > Add checkpatch checks for Co-Developed-by tag.
This patch is not extensible. If this is to be done at all, the Co-Developed-by: should not be a special case because a new and different one might be added in the future. Better to verify that a case insensitive match exists in $signature_tags and then complain if the match is not exact. > Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org> > Signed-off-by: Tobin C. Harding <m...@tobin.cc> > --- > scripts/checkpatch.pl | 22 ++++++++++++++++------ > 1 file changed, 16 insertions(+), 6 deletions(-) > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > index 040aa79e1d9d..a7d2cdcec6a6 100755 > --- a/scripts/checkpatch.pl > +++ b/scripts/checkpatch.pl > @@ -468,6 +468,7 @@ our $signature_tags = qr{(?xi: > Reviewed-by:| > Reported-by:| > Suggested-by:| > + Co-Developed-by:| > To:| > Cc: > )}; > @@ -2468,6 +2469,8 @@ sub process { > my $space_after = $3; > my $email = $4; > my $ucfirst_sign_off = ucfirst(lc($sign_off)); > + my $preferred_signature = ""; > + my $co_dev_by_tag = 'Co-Developed-by:'; > > if ($sign_off !~ /$signature_tags/) { > WARN("BAD_SIGN_OFF", > @@ -2481,15 +2484,22 @@ sub process { > "$ucfirst_sign_off $email"; > } > } > - if ($sign_off =~ /-by:$/i && $sign_off ne > $ucfirst_sign_off) { > - if (WARN("BAD_SIGN_OFF", > - "'$ucfirst_sign_off' is the preferred > signature form\n" . $herecurr) && > - $fix) { > - $fixed[$fixlinenr] = > - "$ucfirst_sign_off $email"; > + if ($sign_off =~ /$co_dev_by_tag$/i) { > + if ($sign_off ne $co_dev_by_tag) { > + $preferred_signature = $co_dev_by_tag; > } > + } elsif ($sign_off =~ /-by:$/i && $sign_off ne > $ucfirst_sign_off) { > + $preferred_signature = $ucfirst_sign_off; > > } > + > + if ($preferred_signature ne "") { > + my $prefix = "'$preferred_signature' is the > preferred signature form\n"; > + if (WARN("BAD_SIGN_OFF", $prefix . $herecurr) > && $fix) { > + $fixed[$fixlinenr] = "$ucfirst_sign_off > $email"; > + } > + } > + > if (!defined $space_after || $space_after ne " ") { > if (WARN("BAD_SIGN_OFF", > "Use a single space after > $ucfirst_sign_off\n" . $herecurr) &&