2023-09-27 01:50:03

by Petr Tesařík

[permalink] [raw]
Subject: [PATCH] checkpatch: warn about multi-line comments without an empty /* line

According to Documentation/process/coding-style.rst, the preferred style
for multi-line comments outside net/ and drivers/net/ is:

.. code-block:: c

/*
* This is the preferred style for multi-line
* comments in the Linux kernel source code.
* Please use it consistently.
*
* Description: A column of asterisks on the left side,
* with beginning and ending almost-blank lines.
*/

Signed-off-by: Petr Tesarik <[email protected]>
---
scripts/checkpatch.pl | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 7d16f863edf1..0fc3427a9ec9 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -4006,6 +4006,14 @@ sub process {
"networking block comments don't use an empty /* line, use /* Comment...\n" . $hereprev);
}

+# Non-networking without an initial /*
+ if ($realfile !~ m@^(drivers/net/|net/)@ &&
+ $prevrawline =~ /^\+[ \t]*\/\*.*[^ \t]$/ &&
+ $rawline =~ /^\+[ \t]*\*/) {
+ WARN("MULTILINE_BLOCK_COMMENT_STYLE",
+ "multi-line block comments should start with an empty /* line\n" . $hereprev);
+ }
+
# Block comments use * on subsequent lines
if ($prevline =~ /$;[ \t]*$/ && #ends in comment
$prevrawline =~ /^\+.*?\/\*/ && #starting /*
--
2.42.0


2023-09-27 04:08:14

by Petr Tesařík

[permalink] [raw]
Subject: Re: [PATCH] checkpatch: warn about multi-line comments without an empty /* line

V Tue, 26 Sep 2023 21:20:06 +0200
Petr Tesarik <[email protected]> napsáno:

> According to Documentation/process/coding-style.rst, the preferred style
> for multi-line comments outside net/ and drivers/net/ is:
>
> .. code-block:: c
>
> /*
> * This is the preferred style for multi-line
> * comments in the Linux kernel source code.
> * Please use it consistently.
> *
> * Description: A column of asterisks on the left side,
> * with beginning and ending almost-blank lines.
> */
>
> Signed-off-by: Petr Tesarik <[email protected]>
> ---
> scripts/checkpatch.pl | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 7d16f863edf1..0fc3427a9ec9 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -4006,6 +4006,14 @@ sub process {
> "networking block comments don't use an empty /* line, use /* Comment...\n" . $hereprev);
> }
>
> +# Non-networking without an initial /*
> + if ($realfile !~ m@^(drivers/net/|net/)@ &&
> + $prevrawline =~ /^\+[ \t]*\/\*.*[^ \t]$/ &&
> + $rawline =~ /^\+[ \t]*\*/) {
> + WARN("MULTILINE_BLOCK_COMMENT_STYLE",

Oops. This should be just BLOCK_COMMENT_STYLE, without MULTILINE; v2 is
on the way...

Petr T

> + "multi-line block comments should start with an empty /* line\n" . $hereprev);
> + }
> +
> # Block comments use * on subsequent lines
> if ($prevline =~ /$;[ \t]*$/ && #ends in comment
> $prevrawline =~ /^\+.*?\/\*/ && #starting /*