[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20061031223906.GR29920@ftp.linux.org.uk>
Date: Tue, 31 Oct 2006 22:39:06 +0000
From: Al Viro <viro@....linux.org.uk>
To: Valdis.Kletnieks@...edu
Cc: Dave Jones <davej@...hat.com>, ray-gmail@...rabbit.org,
"Martin J. Bligh" <mbligh@...gle.com>,
Linus Torvalds <torvalds@...l.org>,
Andrew Morton <akpm@...l.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Jun'ichi Nomura <j-nomura@...jp.nec.com>
Subject: Re: Linux 2.6.19-rc4
On Tue, Oct 31, 2006 at 04:26:55PM -0500, Valdis.Kletnieks@...edu wrote:
> On Tue, 31 Oct 2006 11:51:33 EST, Dave Jones said:
> > On Tue, Oct 31, 2006 at 08:34:23AM -0800, Ray Lee wrote:
> > > On 10/31/06, Martin J. Bligh <mbligh@...gle.com> wrote:
> > > > > At some point we should get rid of all the "politeness" warnings, just
> > > > > because they can end up hiding the _real_ ones.
> > > >
> > > > Yay! Couldn't agree more. Does this mean you'll take patches for all the
> > > > uninitialized variable crap from gcc 4.x ?
> > >
> > > What would be useful in the short term is a tool that shows only the
> > > new warnings that didn't exist in the last point release.
> >
> > git clone git://git.kernel.org/pub/scm/linux/kernel/git/viro/remapper.git
>
> As somebody proves me wrong on the fact it's not easy. Of course, it's
> Al's git tree, which is probably saying something. :)
It is easy, actually. Key observation: unidiff with 0 context lines contains
everything you need to find out which lines survive and where do they move;
just ignore the actual changes in the diff and look at @@... and diff headers.
There are two parts - one takes such diff and generates a fate map for lines
(basically, "this range gets shifted to this place, this range doesn't make it
at all" + file removals + file renames if diff has been generated by git-diff
and contains that information). Another is a very simple filter; it takes
map file as argument, reads it and uses the map to massage lines it reads
from stdin. When we see <affected pathname>:<number> in the beginning of the
line or after a space, see if that line is in surviving range; if it is,
replace pathname and shift line number, otherwise add a prefix ("O:" by
default). That's it. About 10K of sparse C - both filter and map generator.
Two-clause BSD license, so feel free to use it in any way you want.
I don't think there will be serious changes down the road; I'll need to
sit down and turn a description of that puppy into a proper manpage, but
that's about it.
-
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