[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFzgHOnQ-Unfw=RSQ7myz0_twSNv9K+ebYFZcfjiVHkBtw@mail.gmail.com>
Date: Fri, 28 Jul 2017 15:30:30 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Joe Perches <joe@...ches.com>
Cc: Randy Dunlap <rdunlap@...radead.org>,
LKML <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: Re: [PATCH Y.A. RESEND] MAINTAINERS: fix alpha. ordering
On Thu, Jul 27, 2017 at 8:12 PM, Joe Perches <joe@...ches.com> wrote:
>
> I think it's better to centralize the MAINTAINERS
> location in <tree>/MAINTAINERS/<files> than spread
> them all over the tree given how many subsystems and
> maintainerships are also spread around the tree.
>
> But the get_maintainers patch I sent allows both
> styles.
Possibly. I just did realize that we have one de-centralized
maintainers file out there already, and have had for 3+ years:
drivers/staging/unisys/MAINTAINERS.
One thing I like about the decentralized model is that it looks like
we could automate the initial split fairly well based on F: patterns.
Something like:
- if we have a single F-pattern line, without directory wildcards,
put the entry in the MAINTAINERS directory for that F-pattern
- else keep it in the top-level MAINTAINERS file
because everything else I looked at kind of sucked. The "first word of
the description" works really well for a couple of cases, but really
badly for the majority.
But my favorite model right now is to actually do it by the "L:"
entry, and then remove the host name and the common parts from the
email name ("devel", "dev", "kernel", "linux" etc).
And then *if* we have multiple entries (arbitrary cut-off: 5) for the
same base (so the rule would be that we never have a MAINTAINERS file
with just a single entry like that unisys one), we'd split it out and
use "MAINTAINERS/xyz" for those entries.
But we'd still need a fallback for the "rest".
Because doing it by mailing list superficially looks like it might
work very well, we have things like this:
5 L: iommu@...ts.linux-foundation.org
5 L: keyrings@...r.kernel.org
5 L: linux-block@...r.kernel.org
6 L: linux-arm-msm@...r.kernel.org
6 L: linux-samsung-soc@...r.kernel.org
7 L: linux-samsung-soc@...r.kernel.org (moderated for non-subscribers)
7 L: linux-security-module@...r.kernel.org
7 L: linux-wpan@...r.kernel.org
8 L: linux-acpi@...r.kernel.org
8 L: linux-fsdevel@...r.kernel.org
8 L: linux-ide@...r.kernel.org
8 L: linux-serial@...r.kernel.org
8 L: xen-devel@...ts.xenproject.org (moderated for non-subscribers)
9 L: adi-buildroot-devel@...ts.sourceforge.net (moderated for
non-subscribers)
9 L: linux-hams@...r.kernel.org
9 L: linux-mm@...ck.org
11 L: kvm@...r.kernel.org
11 L: linux-mmc@...r.kernel.org
12 L: virtualization@...ts.linux-foundation.org
13 L: linux-renesas-soc@...r.kernel.org
13 L: linux-s390@...r.kernel.org
16 L: linux-iio@...r.kernel.org
16 L: linux-mips@...ux-mips.org
17 L: linux-gpio@...r.kernel.org
18 L: linux-crypto@...r.kernel.org
18 L: linux-mtd@...ts.infradead.org
20 L: linux-arm-kernel@...ts.infradead.org
20 L: linux-input@...r.kernel.org
22 L: linux-i2c@...r.kernel.org
23 L: linux-edac@...r.kernel.org
23 L: linux-fbdev@...r.kernel.org
23 L: linux-rdma@...r.kernel.org
25 L: linux-omap@...r.kernel.org
26 L: alsa-devel@...a-project.org (moderated for non-subscribers)
27 L: linux-pm@...r.kernel.org
28 L: dri-devel@...ts.freedesktop.org
29 L: linuxppc-dev@...ts.ozlabs.org
33 L: linux-pci@...r.kernel.org
35 L: platform-driver-x86@...r.kernel.org
39 L: linux-usb@...r.kernel.org
44 L: linux-wireless@...r.kernel.org
46 L: linux-hwmon@...r.kernel.org
54 L: linux-kernel@...r.kernel.org
57 L: linux-scsi@...r.kernel.org
122 L: linux-arm-kernel@...ts.infradead.org (moderated for non-subscribers)
134 L: netdev@...r.kernel.org
187 L: linux-media@...r.kernel.org
so we'd actually be able to create an entry like "media" with 187
maintainers entries automatically based on that heuristic. Same goes
for a lot of other entries, and we'd end up with about 50 files in
MAINTAINERS which sounds manageable but still usefully split up.
So we'd have files like "rdma", "dma", "omap", "pm", "dri", "pci",
"wireless" etc, all of which sound sane.
(The "linux-kernel@...r.kernel.org" L: entry above would automatically
become moot, because the "filter out the common parts" turns it into
an empty name, which is actually correct - it implies no specific
subsystem)
I generated the above with trivial grep scripting, so some of them may
end up not working or having wrong counts just due to having multiple
L: lines, but it looks like a promising approach to me, and I like how
the names seem to end up all fairly sane.
Comments?
Linus
Powered by blists - more mailing lists