2019-01-10 05:12:16

by Vadim Bendebury

[permalink] [raw]
Subject: [PATCH] checkpatch: allow reporting C99 style comments

Presently C99 style comments are removed unconditionally before actual
patch validity check happens. This is a problem for some third party
projects which use checkpatch.pl but do not allow C99 style comments.

This patch adds yet another variable, named C99_COMMENT_TOLERANCE. If
it is included in the --ignore command line or config file options
list, C99 comments in the patch are reported as errors.

Tested by processing a patch with a C99 style comment, it passes the
check just fine unless '--ignore C99_COMMENT_TOLERANCE' is present in
.checkpatch.conf.

Signed-off-by: Vadim Bendebury <[email protected]>
---
scripts/checkpatch.pl | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index b737ca9d7204..c5fe10934080 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -61,7 +61,6 @@ my $codespellfile = "/usr/share/codespell/dictionary.txt";
my $conststructsfile = "$D/const_structs.checkpatch";
my $typedefsfile = "";
my $color = "auto";
-my $allow_c99_comments = 1;

sub help {
my ($exitcode) = @_;
@@ -1250,6 +1249,8 @@ sub sanitise_line {
my $off = 0;
my $c;

+ my $allow_c99_comments = !defined $ignore_type{"C99_COMMENT_TOLERANCE"};
+
# Always copy over the diff marker.
$res = substr($line, 0, 1);

--
2.20.1.97.g81188d93c3-goog



2019-01-10 21:20:40

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH] checkpatch: allow reporting C99 style comments

On Wed, 2019-01-09 at 21:01 -0800, Vadim Bendebury wrote:
> Presently C99 style comments are removed unconditionally before actual
> patch validity check happens. This is a problem for some third party
> projects which use checkpatch.pl but do not allow C99 style comments.
>
> This patch adds yet another variable, named C99_COMMENT_TOLERANCE. If
> it is included in the --ignore command line or config file options
> list, C99 comments in the patch are reported as errors.
>
> Tested by processing a patch with a C99 style comment, it passes the
> check just fine unless '--ignore C99_COMMENT_TOLERANCE' is present in
> .checkpatch.conf.

I'm not a big fan of the name but I can't think of
anything much better.

And the location of the added test isn't good.

> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -61,7 +61,6 @@ my $codespellfile = "/usr/share/codespell/dictionary.txt";
> my $conststructsfile = "$D/const_structs.checkpatch";
> my $typedefsfile = "";
> my $color = "auto";
> -my $allow_c99_comments = 1;

Keep this here.

> sub help {
> my ($exitcode) = @_;
> @@ -1250,6 +1249,8 @@ sub sanitise_line {
> my $off = 0;
> my $c;
>
> + my $allow_c99_comments = !defined $ignore_type{"C99_COMMENT_TOLERANCE"};
> +

And add this test as a new line near line 1015 like

my $vname;
+$allow_c99_comments = !defined $ignore_type{"C99_COMMENT_TOLERANCE"};
for my $filename (@ARGV) {



2019-01-11 00:26:45

by Vadim Bendebury

[permalink] [raw]
Subject: [PATCH] checkpatch: allow reporting C99 style comments

Presently C99 style comments are removed unconditionally before actual
patch validity check happens. This is a problem for some third party
projects which use checkpatch.pl but do not allow C99 style comments.

This patch adds yet another variable, named C99_COMMENT_TOLERANCE. If
it is included in the --ignore command line or config file options
list, C99 comments in the patch are reported as errors.

Tested by processing a patch with a C99 style comment, it passes the
check just fine unless '--ignore C99_COMMENT_TOLERANCE' is present in
.checkpatch.conf.

Signed-off-by: Vadim Bendebury <[email protected]>
---
scripts/checkpatch.pl | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index b737ca9d7204..8a1aaeb8fa1b 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -61,7 +61,7 @@ my $codespellfile = "/usr/share/codespell/dictionary.txt";
my $conststructsfile = "$D/const_structs.checkpatch";
my $typedefsfile = "";
my $color = "auto";
-my $allow_c99_comments = 1;
+my $allow_c99_comments = 1; # Can be overridden by --ignore C99_COMMENT_TOLERANCE

sub help {
my ($exitcode) = @_;
@@ -1011,6 +1011,7 @@ if ($git) {
}

my $vname;
+$allow_c99_comments = !defined $ignore_type{"C99_COMMENT_TOLERANCE"};
for my $filename (@ARGV) {
my $FILE;
if ($git) {
--
2.17.1


2019-01-11 00:31:24

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH] checkpatch: allow reporting C99 style comments

On Thu, 2019-01-10 at 14:49 -0800, Vadim Bendebury wrote:
> Presently C99 style comments are removed unconditionally before actual
> patch validity check happens. This is a problem for some third party
> projects which use checkpatch.pl but do not allow C99 style comments.
>
> This patch adds yet another variable, named C99_COMMENT_TOLERANCE. If
> it is included in the --ignore command line or config file options
> list, C99 comments in the patch are reported as errors.
>
> Tested by processing a patch with a C99 style comment, it passes the
> check just fine unless '--ignore C99_COMMENT_TOLERANCE' is present in
> .checkpatch.conf.
>
> Signed-off-by: Vadim Bendebury <[email protected]>

Seems sensible enough.

> ---
> scripts/checkpatch.pl | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index b737ca9d7204..8a1aaeb8fa1b 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -61,7 +61,7 @@ my $codespellfile = "/usr/share/codespell/dictionary.txt";
> my $conststructsfile = "$D/const_structs.checkpatch";
> my $typedefsfile = "";
> my $color = "auto";
> -my $allow_c99_comments = 1;
> +my $allow_c99_comments = 1; # Can be overridden by --ignore C99_COMMENT_TOLERANCE
>
> sub help {
> my ($exitcode) = @_;
> @@ -1011,6 +1011,7 @@ if ($git) {
> }
>
> my $vname;
> +$allow_c99_comments = !defined $ignore_type{"C99_COMMENT_TOLERANCE"};
> for my $filename (@ARGV) {
> my $FILE;
> if ($git) {


2019-01-11 21:46:09

by Joe Perches

[permalink] [raw]
Subject: Re: [PATCH] checkpatch: allow reporting C99 style comments

On Fri, 2019-01-11 at 10:07 -0800, Vadim Bendebury wrote:
> Joe,
>
> what are next steps to get this merged

Generally, Andrew Morton will pick it up
and merge it in the next major release.

> - do I have to do anything,

Be patient.

> is anything still missing?

I think not.