Currently checkpatch warns when asm/file.h is included and linux/file.h exists. That conversion can be made when linux/file.h includes asm/file.h which is not always the case.(See signal.h)
Signed-off-by: Fabian Frederick <f...@skynet.be> --- V2: Apply suggestions by Joe Perches: -Remove superfluous -i in grep -Use $root to make checkpatch callable from anywhere -Process all include cases. scripts/checkpatch.pl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index d54a814..9e70cd7 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -4242,13 +4242,16 @@ sub process { } } -#warn if <asm/foo.h> is #included and <linux/foo.h> is available (uses RAW line) +# warn if <asm/foo.h> is #included and <linux/foo.h> is available and includes +# itself <asm/foo.h> (uses RAW line) if ($tree && $rawline =~ m{^.\s*\#\s*include\s*\<asm\/(.*)\.h\>}) { my $file = "$1.h"; my $checkfile = "include/linux/$file"; + my $asminclude = `grep -Ec "#include\\s+<asm/$file>" $root/$checkfile`; if (-f "$root/$checkfile" && $realfile ne $checkfile && - $1 !~ /$allowed_asm_includes/) + $1 !~ /$allowed_asm_includes/ && + $asminclude > 0 ) { if ($realfile =~ m{^arch/}) { CHK("ARCH_INCLUDE_LINUX", -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/