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@xxxxxxxxxx> --- scripts/checkpatch.pl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 503e8abbb2c1..f824d690a565 100755 --- 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); + } + # check we are in a valid source file C or perl if not then ignore this hunk next if ($realfile !~ /\.(h|c|pl|dtsi|dts)$/); -- 2.32.0