All of lore.kernel.org
 help / color / mirror / Atom feed
* + get_maintainer-only-use-the-rest-as-a-fallback.patch added to mm-nonmm-hotfixes-unstable branch
@ 2026-11-14  3:50 Andrew Morton
  0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2026-11-14  3:50 UTC (permalink / raw)
  To: mm-commits, wy, users, skhan, si.yanteng, rdunlap, petr.pavlu,
	joe, federico.vaga, dzm91, corbet, chenyou910331, carlos.bilbao,
	avadhut.naik, alexs, akiyks, konstantin, akpm


The patch titled
     Subject: get_maintainer: only use THE REST as a fallback
has been added to the -mm mm-nonmm-hotfixes-unstable branch.  Its filename is
     get_maintainer-only-use-the-rest-as-a-fallback.patch

This patch will shortly appear at
     https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/get_maintainer-only-use-the-rest-as-a-fallback.patch

This patch will later appear in the mm-nonmm-hotfixes-unstable branch at
    git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Before you just go and hit "reply", please:
   a) Consider who else should be cc'ed
   b) Prefer to cc a suitable mailing list as well
   c) Ideally: find the original patch on the mailing list and do a
      reply-to-all to that, adding suitable additional cc's

*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***

The -mm tree is included into linux-next via various
branches at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there most days

------------------------------------------------------
From: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Subject: get_maintainer: only use THE REST as a fallback
Date: Fri, 13 Nov 2026 18:02:45 -0500

Patch series "get_maintainer: stop sending every patch to LKML", v3.

LKML has become mostly a firehose of patches that are already going to a
subsystem list.  The reason is THE REST: it matches every file in the
tree, so get_maintainer.pl adds linux-kernel@vger.kernel.org to every
single patch.  During the week of Oct 1-7, 2026:

  - LKML carried 13,641 messages (~1,950/day), 90% of which were also
    sent to at least one other list;
  - with ~2,100 subscribers, that is about 29 million deliveries per
    week for LKML alone.

This problem is becoming urgent and untenable.  The increased volume of
patches sent using AI tooling has resulted in dramatically higher delivery
queues and if this change is not implemented, we will have to start
force-unsubscribing addresses that do not show any developer activity or
use similar drastic measures.

This issue came up during the 2026 Maintainer Summit and the consensus was
that "always include linux-kernel for every patch" was never the intent.

This series makes THE REST a fallback as initially intended: it is only
added for a file when no other matching MAINTAINERS section provides a
mailing list that get_maintainer.pl would actually output for it.  Patch 2
updates submitting-patches.rst, which currently tells submitters to send
every patch to LKML.

Several v1 reviewers asked for a catch-all list that would keep carrying
every patch for those who want to follow all kernel development.  That is
a worthwhile discussion, but it is separate from this series, which only
restores THE REST to its original role.

Translation maintainers are Cc'd because the it_IT, ja_JP, sp_SP, zh_CN
and zh_TW versions of submitting-patches.rst carry the same "send every
patch to LKML" advice and will need a follow-up update once the English
text is settled.


This patch (of 2):

THE REST matches every file in the tree via "F: *" and "F: */", so
get_maintainer.pl currently adds linux-kernel@vger.kernel.org to every
patch, regardless of whether the touched files already belong to a
subsystem with its own mailing list.

Only add THE REST for a file when no other matching section provides a
mailing list that get_maintainer.pl would actually output. Lists marked
"subscribers-only" are omitted unless --s is given, and lists marked
"moderated" are omitted with --no-moderated, so such lists don't count
as a destination in those cases. Files that match no section, or only
sections without such a list, still fall back to THE REST, so every
patch keeps reaching at least one known-public mailing list.

Link: https://lore.kernel.org/20261113-get-maintainer-the-rest-fallback-v3-0-36ee5a3e8d13@linuxfoundation.org
Link: https://lore.kernel.org/20261113-get-maintainer-the-rest-fallback-v3-1-36ee5a3e8d13@linuxfoundation.org
Signed-off-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Joe Perches <joe@perches.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Shuah Khan <skhan@linuxfoundation.org>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Federico Vaga <federico.vaga@vaga.pv.it>
Cc: Akira Yokosawa <akiyks@gmail.com>
Cc: Carlos Bilbao <carlos.bilbao@kernel.org>
Cc: Avadhut Naik <avadhut.naik@amd.com>
Cc: Alex Shi <alexs@kernel.org>
Cc: Yanteng Si <si.yanteng@linux.dev>
Cc: Dongliang Mu <dzm91@hust.edu.cn>
Cc: Chen-Yu Yeh <chenyou910331@gmail.com>
Cc: Weijie Yuan <wy@wyuan.org>
Cc: <users@kernel.org>
Cc: Petr Pavlu <petr.pavlu@suse.com>

 scripts/get_maintainer.pl |   43 ++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

--- a/scripts/get_maintainer.pl~get_maintainer-only-use-the-rest-as-a-fallback
+++ a/scripts/get_maintainer.pl
@@ -959,6 +959,15 @@ sub get_maintainers {
 	    $tvi = $end + 1;
 	}
 
+	# THE REST matches every file, so only fall back to it when no
+	# other matching section provides a mailing list for this file
+	# that we would actually output with the current options.
+	my ($the_rest) = grep { get_section_name($_) eq "THE REST" } keys %hash;
+	if (defined($the_rest) &&
+	    grep { $_ != $the_rest && section_has_list($_) } keys %hash) {
+	    delete $hash{$the_rest};
+	}
+
 	foreach my $line (sort {$hash{$b} <=> $hash{$a}} keys %hash) {
 	    add_categories($line, "");
 	    if ($sections) {
@@ -1295,6 +1304,40 @@ sub find_ending_index {
     return $index;
 }
 
+sub get_section_name {
+    my ($index) = @_;
+
+    return $typevalue[find_starting_index($index)];
+}
+
+sub section_has_list {
+    my ($index) = @_;
+
+    my $start = find_starting_index($index);
+    my $end = find_ending_index($index);
+    for (my $i = $start; $i < $end; $i++) {
+	next if ($typevalue[$i] !~ m/^L:\s*(.*)/);
+	my $list_additional = "";
+	if ($1 =~ m/[^\s]+\s+(.*)$/) {
+	    $list_additional = $1;
+	}
+	return 1 if (list_is_selected($list_additional));
+    }
+    return 0;
+}
+
+# Must match the list selection in add_categories()
+sub list_is_selected {
+    my ($list_additional) = @_;
+
+    if ($list_additional =~ m/subscribers-only/) {
+	return $email_subscriber_list;
+    } elsif ($list_additional =~ m/moderated/) {
+	return $email_list && $email_moderated_list;
+    }
+    return $email_list;
+}
+
 sub get_subsystem_name {
     my ($index) = @_;
 
_

Patches currently in -mm which might be from konstantin@linuxfoundation.org are

get_maintainer-only-use-the-rest-as-a-fallback.patch
docs-submitting-patches-make-lkml-a-list-of-last-resort-again.patch


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-11-14  3:50 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-14  3:50 + get_maintainer-only-use-the-rest-as-a-fallback.patch added to mm-nonmm-hotfixes-unstable branch Andrew Morton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.