[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200710071905.l97J5l6r018154@agora.fsl.cs.sunysb.edu>
Date: Sun, 7 Oct 2007 15:05:47 -0400
From: Erez Zadok <ezk@...sunysb.edu>
To: Ingo Molnar <mingo@...e.hu>, apw@...dowen.org
Cc: Erez Zadok <ezk@...sunysb.edu>, rdunlap@...otime.net,
jschopp@...tin.ibm.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] 0/3 checkpatch updates, new checkfiles script
In message <20071006111343.GA29484@...e.hu>, Ingo Molnar writes:
>
> * Erez Zadok <ezk@...sunysb.edu> wrote:
>
> > So, I ran the above script and it found nearly 1.5 million reported
> > warnings/errors, with drivers being the largest abuser, not
> > surprisingly. [...]
>
> have you tried that with the latest version too:
>
> http://www.kernel.org/pub/linux/kernel/people/apw/checkpatch/checkpatch.pl-next
>
> it outputs far fewer false positives.
>
> Ingo
Andy, Ingo,
I tried the new checkpatch.pl on 2.6.23-rc9:
$ ./scripts/checkpatch.pl -q --file --emacs fs/namei.c
and got many perl warnings such as:
Use of uninitialized value in concatenation (.) or string at ./scripts/checkpatch.pl line 455.
followed by the usual verbose error message instead of one-per-line as I
assume the --emacs option is supposed to produce:
:2823: WARNING: EXPORT_SYMBOL(foo); should immediately follow its function/variable
#2823: FILE: namei.c:2820:
+EXPORT_SYMBOL(vfs_mkdir);
BTW, calling the option --emacs is a bit too restrictive. Emacs didn't
invent the format of "filename:linenumeber:message". C compilers had it
before. Even "grep -n *" had it before. That's why I think calling it a
"terse output" option may be more accurate.
The following small patch to checkpath.pl-next seems to fix the perl
warnings, but it still outputs the long error messages along with the
shorter one-liners.
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index bdc493e..bbc4825 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -85,7 +85,7 @@ for my $filename (@ARGV) {
push(@rawlines, $_);
}
close(FILE);
- if (!process($ARGV, @rawlines)) {
+ if (!process($filename, @rawlines)) {
$exit = 1;
}
@rawlines = ();
@@ -452,7 +452,7 @@ sub process {
my $rawline = $line;
- $prefix = "$ARGV:$linenr: " if ($emacs);
+ $prefix = "$filename:$linenr: " if ($emacs);
#extract the filename as it passes
if ($line=~/^\+\+\+\s+(\S+)/) {
Cheers,
Erez.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists