Re: [RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
> On 30 March 2015 at 22:49 Joe Perches wrote: > > > On Mon, 2015-03-30 at 22:36 +0200, Fabian Frederick wrote: > > 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) > [] > > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl > [] > > -#warn if is #included and is available (uses RAW > > line) > > +# warn if is #included and is available and > > includes > > +# itself (uses RAW line) > > if ($tree && $rawline =~ > >m{^.\s*\#\s*include\s*\}) { > > my $file = "$1.h"; > > my $checkfile = "include/linux/$file"; > > + my $asminclude = `grep -ci "#include " > > $checkfile`; > > This won't work with #include forms like: > #include > or when checkpatch is run from somewhere other > than the top of tree. > > why the -i? Hi Joe, This was just an RFC. I guess you're ok with the idea so I added your suggestions in V2. Regards, Fabian > > > 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", > > -- 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/
Re: [RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
On 30 March 2015 at 22:49 Joe Perches j...@perches.com wrote: On Mon, 2015-03-30 at 22:36 +0200, Fabian Frederick wrote: 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) [] diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] -#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 -ci #include asm/$file.h $checkfile`; This won't work with #include forms like: #include asm/foo.h or when checkpatch is run from somewhere other than the top of tree. why the -i? Hi Joe, This was just an RFC. I guess you're ok with the idea so I added your suggestions in V2. Regards, Fabian 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, -- 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/
Re: [RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
On Mon, 2015-03-30 at 22:36 +0200, Fabian Frederick wrote: > 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) [] > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] > -#warn if is #included and is available (uses RAW > line) > +# warn if is #included and is available and > includes > +# itself (uses RAW line) > if ($tree && $rawline =~ > m{^.\s*\#\s*include\s*\}) { > my $file = "$1.h"; > my $checkfile = "include/linux/$file"; > + my $asminclude = `grep -ci "#include " > $checkfile`; This won't work with #include forms like: #include or when checkpatch is run from somewhere other than the top of tree. why the -i? > 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", -- 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/
[RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
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 --- scripts/checkpatch.pl | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index d54a814..5824829 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -4242,13 +4242,16 @@ sub process { } } -#warn if is #included and is available (uses RAW line) +# warn if is #included and is available and includes +# itself (uses RAW line) if ($tree && $rawline =~ m{^.\s*\#\s*include\s*\}) { my $file = "$1.h"; my $checkfile = "include/linux/$file"; + my $asminclude = `grep -ci "#include " $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/
[RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
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 --- scripts/checkpatch.pl | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index d54a814..5824829 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 -ci #include asm/$file.h $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/
Re: [RFC 1/1 linux-next] checkpatch: don't ask for asm/file.h to linux/file.h unconditionally
On Mon, 2015-03-30 at 22:36 +0200, Fabian Frederick wrote: 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) [] diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] -#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 -ci #include asm/$file.h $checkfile`; This won't work with #include forms like: #includeasm/foo.h or when checkpatch is run from somewhere other than the top of tree. why the -i? 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, -- 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/