[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c86b53f8d8c60a16a4cb3b34ac9ab2ab8b992595.camel@perches.com>
Date: Fri, 10 Jun 2022 18:33:06 -0700
From: Joe Perches <joe@...ches.com>
To: Masahiro Yamada <masahiroy@...nel.org>,
linux-kbuild@...r.kernel.org
Cc: Al Viro <viro@...iv.linux.org.uk>,
Nicolas Pitre <npitre@...libre.com>,
Luis Chamberlain <mcgrof@...nel.org>,
linux-modules@...r.kernel.org, Ard Biesheuvel <ardb@...nel.org>,
Andy Whitcroft <apw@...onical.com>,
Dwaipayan Ray <dwaipayanray1@...il.com>,
Lukas Bulwahn <lukas.bulwahn@...il.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 5/7] checkpatch: warn if <asm/export.h> is included
On Sat, 2022-06-11 at 03:32 +0900, Masahiro Yamada wrote:
> With the previous refactoring,
>
> - <asm/export.h> is a wrapper of <asm-generic/export.h>
> - <asm-generic/export.h> is a wrapper of <linux/export.h>
>
> My hope is to replace
>
> #include <asm/export.h> --> #include <linux/export.h>
>
> for all *.S files.
>
> For now, adding a warning in the checkpatch.
>
> Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
> ---
>
> scripts/checkpatch.pl | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -3753,6 +3753,13 @@ sub process {
> "Avoid using '.L' prefixed local symbol names for denoting a range of code via 'SYM_*_START/END' annotations; see Documentation/asm-annotations.rst\n" . $herecurr);
> }
>
> +# warn if <asm/export.h> is included.
> +# <asm/export.h> is a wrapper of <linux/export.h>. Please include <linux/export.h> directly.
> + if ($tree && $rawline =~ m{^.\s*\#\s*include\s*\<asm\/export\.h\>}) {
> + WARN("INCLUDE_LINUX_EXPORT",
> + "Please include <linux/export.h> instead of <asm/export.h>\n" . $herecurr);
> + }
This warns on patch context lines.
That's not something checkpatch generally does.
Likely this should use /^\+ rather than /^.
And it's nice to have --fix capability
if (WARN("etc...") &&
$fix) {
$fixed[$fixlinenr] =~ s/\s*#\s*include\s*\<asm\/export\.h\>/#include <linux/export.h>/;
}
cheers, Joe
Powered by blists - more mailing lists