lkml.org 
[lkml]   [2008]   [Dec]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] kbuild: warn about headers using __[us]{8,16,32,64} types w/out linux/types.h
Date
On Monday 29 December 2008 08:24:56 Sam Ravnborg wrote:
> On Mon, Dec 29, 2008 at 07:18:47AM -0500, Mike Frysinger wrote:
> > Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> > ---
> > scripts/headers_check.pl | 20 ++++++++++++++++++++
> > 1 files changed, 20 insertions(+), 0 deletions(-)
> >
> > diff --git a/scripts/headers_check.pl b/scripts/headers_check.pl
> > index bdd9fb6..5036319 100644
> > --- a/scripts/headers_check.pl
> > +++ b/scripts/headers_check.pl
> > @@ -37,6 +37,7 @@ foreach my $file (@files) {
> > check_include();
> > check_prototypes();
> > check_config();
> > + check_sizetypes();
> > }
> > close FH;
> > }
> > @@ -72,3 +73,22 @@ sub check_config
> > printf STDERR "$filename:$lineno: leaks CONFIG_$1 to userspace where
> > it is not valid\n"; }
> > }
> > +
> > +my $linux_types;
> > +sub check_sizetypes
> > +{
> > + if ($lineno == 1) {
> > + $linux_types = 0;
> > + } elsif ($linux_types) {
> > + return;
> > + }
> > + if ($line =~ m/^\s*#\s*include\s+<linux\/types.h>/) {
> > + $linux_types = 1;
> > + return;
> > + }
> > + if ($line =~ m/__[us](8|16|32|64)\b/) {
> > + printf STDERR "$filename:$lineno: found __[us]{8,16,32,64} type w/out
> > #include <linux/types.h>\n"; + # Warn until headers are all fixed
> > + #$ret = 1;
> > + }
> > +}
>
> We do not need to warn for each line in a file. Only once is enough.

i wasnt sure about that ... got pretty noisy the way i posted it :)

> Also I assume that include <asm/types.h> is also ok.

i dont think so ... does it really make sense for headers to be hitting
asm/types.h anyways ? shouldnt they all be going through linux/types.h ?
checkpatch would certainly warn about it ...
-mike
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2008-12-29 21:31    [W:0.046 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site