Re: [PATCH 0/10] MAINTAINERS - script, patterns, and misc fixes

Joe Perches
2009-01-14T03:48:21Z

On Tue, 2009-01-13 at 12:54 -0800, Andrew Morton wrote:
> I applaud the intent.
> This patchset is basically unmergeable by anyone except Linus - it
> already gets three rejects against half-hour-old mainline.

True.

> How does it work, anyway?

Find a section/file match by pattern.
If --git set (default), find the git "by: " signees by file.
It uses the equivalent of what Linus posted quite a while back.

+sub recent_git_signoffs {
+ my ($file) = @_;
+
+ my $sign_offs = "";
+ my $cmd = "";
+ my $output = "";
+
+ my @lines = ();
+
+ if (which("git") eq "") {
+ die("$P: git not found. Add --nogit to options?\n");
+ }
+
+ $cmd = "git log --since=12.months.ago -- ${file}";
+ $cmd .= " | grep -i '^ [-a-z]*by:.*\\\@'";
+ if (!$email_git_penguin_chiefs) {
+ $cmd .= " | grep -E -v \"${penguin_chiefs}\"";
+ }
+ $cmd .= " | sort | uniq -c | sort -r -n | head -n 5";
+ $cmd .= " | cut -f 2 -d ':' -s";

> akpm:/usr/src/git26> ../25/scripts/get_maintainer.pl -f mm/filemap.c
> Balbir Singh <balbir@linux.vnet.ibm.com>
> Hugh Dickins <hugh@veritas.com>
> KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
> Miklos Szeredi <mszeredi@suse.cz>
> Nick Piggin <npiggin@suse.de>
>
> I think Balbir would be surprised!

$ scripts/get_maintainer.pl --nogit -f mm/filemap.c
linux-kernel@vger.kernel.org
linux-mm@kvack.org

> akpm:/usr/src/git26> ../25/scripts/get_maintainer.pl -f fs/ext3/super.c
> Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
> Christoph Hellwig <hch@lst.de>
> Jan Blunck <jblunck@suse.de>
> Jan Kara <jack@suse.cz>
> Marcin Slusarz <marcin.slusarz@gmail.com>
>
> mm.. spose so, but it isn't terribly accurate. Does it take
> signed-off-by:s and/or the git Commit: header into account?

Just the most frequent and top 5 "by:" signees for the last year.

$ scripts/get_maintainer.pl --nogit -f fs/ext3/super.c
Andreas Dilger <adilger@sun.com>
Andrew Morton <akpm@linux-foundation.org>
Stephen Tweedie <sct@redhat.com>
linux-ext4@vger.kernel.org

> akpm:/usr/src/git26> ../25/scripts/get_maintainer.pl -f fs/xfs/xfs.h
> Christoph Hellwig <hch@infradead.org>
> Donald Douwsma <donaldd@sgi.com>
> Eric Sandeen <sandeen@sandeen.net>
> Lachlan McIlroy <lachlan@sgi.com>
> Tim Shimmin <tes@sgi.com>
>
> OK, that was an easy case.

$ scripts/get_maintainer.pl --nogit -f fs/xfs/xfs.h
Tim Shimmin <xfs-masters@oss.sgi.com>
xfs@oss.sgi.com

> It's a bit slow. That's git's fault. Perhaps some git person will be
> able to suggest ways of speeding it up.

Don't use git? Add --nogit?

> akpm:/usr/src/git26> ../25/scripts/get_maintainer.pl -f mm/pdflush.c
> Ingo Molnar <mingo@elte.hu>
> Jesper Juhl <jesper.juhl@gmail.com>
> Mike Travis <travis@sgi.com>
> OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
> Pavel Machek <pavel@suse.cz>
>
> again, not the result I'd have expected!

$ scripts/get_maintainer.pl --nogit -f mm/pdflush.c
linux-kernel@vger.kernel.org
linux-mm@kvack.org

> But I guess we can fine-tune these thnigs after we get the bulk of it
> settled in.
> My script generates what I consider to be better results:

[script...]

I have no problem changing the get_maintainer.pl script to use
only the "author:" instead of the signees.

My desire is to add the file patterns themselves.