From: Mike Frysinger <vapier@gentoo.org>
To: Sam Ravnborg <sam@ravnborg.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] kbuild: warn about headers using __[us]{8,16,32,64} types w/out linux/types.h
Date: Tue, 30 Dec 2008 06:50:14 -0500 [thread overview]
Message-ID: <200812300650.15201.vapier@gentoo.org> (raw)
In-Reply-To: <20081230104303.GA486@uranus.ravnborg.org>
[-- Attachment #1: Type: text/plain, Size: 2456 bytes --]
On Tuesday 30 December 2008 05:43:03 Sam Ravnborg wrote:
> On Mon, Dec 29, 2008 at 03:27:51PM -0500, Mike Frysinger wrote:
> > > 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 ...
>
> I added following patch which I have pushed out.
>
> Sam
>
> From 1f71c478dadbe1425eeaa704e50c7030ab011c5b Mon Sep 17 00:00:00 2001
> From: Sam Ravnborg <sam@ravnborg.org>
> Date: Tue, 30 Dec 2008 11:34:58 +0100
> Subject: [PATCH] kbuild: add checks for include of linux/types in userspace
> headers
>
> If we see __[us](8|16|32|64) then we must include <linux/types.h>
> If wee see include of <asm/types.h> then we recommend <linux/types.h>
>
> Original script from Mike but modified by me.
>
> Cc: Mike Frysinger <vapier@gentoo.org>
> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
> ---
> scripts/headers_check.pl | 47
> +++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 44
> insertions(+), 3 deletions(-)
>
> diff --git a/scripts/headers_check.pl b/scripts/headers_check.pl
> index 72924a7..b62c319 100644
> --- a/scripts/headers_check.pl
> +++ b/scripts/headers_check.pl
> @@ -34,9 +34,11 @@ foreach my $file (@files) {
> $lineno = 0;
> while ($line = <FH>) {
> $lineno++;
> - check_include();
> - check_prototypes();
> - check_config();
> + &check_include();
> + &check_asm_types();
> + &check_sizetypes();
> + &check_prototypes();
> + &check_config();
> }
> close FH;
> }
> @@ -73,3 +75,42 @@ sub check_config
> }
> }
>
> +my $linux_asm_types;
> +sub check_asm_types()
> +{
> + if ($lineno == 1) {
> + $linux_asm_types = 0;
> + } elsif ($linux_asm_types >= 1) {
> + return;
> + }
> + if ($line =~ m/^\s*#\s*include\s+<asm\/types.h>/) {
> + $linux_asm_types = 1;
> + printf STDERR "$filename:$lineno: " .
> + "include of <linux/types.h> is preferred over <asm/types.h>\n"
> + # Warn until headers are all fixed
> + #$ret = 1;
> + }
> +}
you'll want to special case linux/types.h as it should be pulling in
asm/types.h ... off the top of my head, that's the only one ...
-mike
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 835 bytes --]
next prev parent reply other threads:[~2008-12-30 11:50 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-29 12:18 Mike Frysinger
2008-12-29 13:24 ` Sam Ravnborg
2008-12-29 20:27 ` Mike Frysinger
2008-12-30 10:43 ` Sam Ravnborg
2008-12-30 11:50 ` Mike Frysinger [this message]
2013-10-08 19:03 ` [PATCH] kbuild: warn about headers using __[us]{8, 16, 32, 64} " Geert Uytterhoeven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200812300650.15201.vapier@gentoo.org \
--to=vapier@gentoo.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sam@ravnborg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome