From: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
To: dan.j.williams@intel.com
Cc: Greg KH <gregkh@linuxfoundation.org>,
Doug Anderson <dianders@chromium.org>,
James Bottomley <James.Bottomley@hansenpartnership.com>,
"ksummit@lists.linux.dev" <ksummit@lists.linux.dev>
Subject: Re: Replacing Link trailers
Date: Wed, 15 Oct 2025 14:37:48 -0400 [thread overview]
Message-ID: <20251015-versed-active-silkworm-bb87bd@lemur> (raw)
In-Reply-To: <68efd54da845e_2f89910071@dwillia2-mobl4.notmuch>
On Wed, Oct 15, 2025 at 10:09:33AM -0700, dan.j.williams@intel.com wrote:
> > So unless we have one big "all the notes merged into one" tree
> > somewhere
>
> ...circling back to say. Why *not* do this?
Git notes are fragile, they have important scalability problems (they are all
just files in a single ref, so if you have a million annotated commits, you
have a million files split across a bunch of two-letter prefixed dirs), and
when multiple writers are editing notes, you will have conflicts and merges.
It's not a great medium for a system that's supposed to be continuously added
to.
I have pondered this multiple times and my preferred approach would be to have
a machine-readable feed that can be indexed and searched. To me, it makes
sense to make it a public-inbox feed that is just RFC-2822 messages, but
that's obviously because I have a large public-inbox hammer. Our transparency
feed operates this way:
https://git.kernel.org/pub/scm/infra/transparency-logs/gitolite/git/1.git/plain/m
We could have the same approach with commit annotations.
E.g. if a patch is merged by a submaintainer:
From: somebot: <...>
Subject: commit annotation for abcd...7890
X-For-Commit-ID: abcd...7890
X-For-Patch-ID: bcde....8901
References: <some@message-id>
[other headers like Date, Message-ID, etc]
---
source: pub/scm/linux/kernel/git/subsystem/linux
link: https://patch.msgid.link/some@message-id
type: merge
description |
Merged by somemaintainer@kernel.org
If it is then merged into mainline:
From: somebot: <...>
Subject: commit annotation for abcd...7890
X-For-Commit-ID: abcd...7890
X-For-Patch-ID: bcde....8901
References: <some@message-id>
[other headers like Date, Message-ID, etc]
---
source: pub/scm/linux/kernel/git/subsystem/linux
link: https://patch.msgid.link/some@message-id
type: merge
description |
Merged by torvalds@linuxfoundation.org
If it is then mentioned in a bug report:
From: SomeOtherBot <...>
Subject: commit annotation for abcd...7890
X-For-Commit-ID: abcd...7890
[other headers like Date, Message-ID, etc]
---
source: https://bugzilla.kernel.org/bug/12345
link: https://bugzilla.kernel.org/bug/12345/comment1
type: bug
description: |
Mentioned in bug 12345 comment 1 as possible source of
data corruption in frobfs under high loads.
This is trivial to search for if we're indexing X-For-Commit-ID headers and
then trivial to parse to get a full "medical history" of a commit. Anyone can
clone this and run their own analysis on it using heuristic or AI tools.
This generally goes into my vision of lore as a "message bus" of sorts for
everything to do with Linux development. It's unwieldy for a human, but we're
gradually entering into an era where automated agents are able to efficiently
analyze the firehose and tame it for maintainers. Maybe.
-K
next prev parent reply other threads:[~2025-10-15 18:37 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-13 11:53 Replacing Link trailers James Bottomley
2025-10-13 12:25 ` Mathieu Desnoyers
2025-10-13 12:48 ` James Bottomley
2025-10-13 12:50 ` Mark Brown
2025-10-13 14:52 ` Guenter Roeck
2025-10-13 17:36 ` Steven Rostedt
2025-10-14 19:12 ` Johannes Berg
2025-10-14 19:35 ` Steven Rostedt
2025-10-15 22:01 ` Johannes Berg
2025-10-15 22:22 ` Steven Rostedt
2025-10-16 10:16 ` Simona Vetter
2025-10-16 12:18 ` Hans de Goede
2025-10-16 18:39 ` David Woodhouse
2025-10-16 7:43 ` Geert Uytterhoeven
2025-10-14 20:23 ` Doug Anderson
2025-10-16 8:08 ` Dan Carpenter
2025-10-13 15:40 ` Doug Anderson
2025-10-13 16:31 ` James Bottomley
2025-10-13 17:39 ` Steven Rostedt
2025-10-13 17:50 ` Theodore Ts'o
2025-10-13 19:07 ` H. Peter Anvin
2025-10-13 19:20 ` Linus Torvalds
2025-10-13 19:35 ` James Bottomley
2025-10-13 19:37 ` H. Peter Anvin
2025-10-13 19:36 ` H. Peter Anvin
2025-10-13 20:34 ` Doug Anderson
2025-10-13 20:36 ` H. Peter Anvin
2025-10-13 20:58 ` Laurent Pinchart
2025-10-13 20:59 ` Vlastimil Babka
2025-10-13 21:46 ` Doug Anderson
2025-10-14 14:23 ` Sasha Levin
2025-10-14 11:09 ` Mark Brown
2025-10-13 19:35 ` H. Peter Anvin
2025-10-14 16:01 ` dan.j.williams
2025-10-14 17:46 ` Greg KH
2025-10-14 17:57 ` dan.j.williams
2025-10-15 17:09 ` dan.j.williams
2025-10-15 17:55 ` James Bottomley
2025-10-15 18:04 ` Luck, Tony
2025-10-15 18:37 ` Konstantin Ryabitsev [this message]
2025-10-15 19:13 ` dan.j.williams
2025-10-15 19:15 ` Linus Torvalds
2025-10-15 19:17 ` Linus Torvalds
2025-10-15 22:51 ` Doug Anderson
2025-10-16 4:26 ` Chen-Yu Tsai
2025-10-16 6:57 ` Greg KH
2025-10-16 10:04 ` Jani Nikula
2025-10-16 11:54 ` James Bottomley
2025-10-16 12:18 ` Greg KH
2025-10-16 12:29 ` James Bottomley
2025-10-16 13:00 ` Konstantin Ryabitsev
2025-10-16 13:47 ` Steven Rostedt
2025-10-16 14:36 ` Mark Brown
2025-10-16 14:58 ` Rob Herring
2025-10-16 15:07 ` James Bottomley
2025-10-16 15:36 ` Geert Uytterhoeven
2025-10-16 15:52 ` James Bottomley
2025-10-16 15:37 ` Steven Rostedt
2025-10-16 19:29 ` H. Peter Anvin
2025-10-16 19:32 ` James Bottomley
2025-10-16 23:53 ` H. Peter Anvin
2025-10-16 19:09 ` James Bottomley
2025-10-17 2:27 ` Doug Anderson
2025-10-17 8:44 ` Vlastimil Babka
2025-10-17 9:21 ` Geert Uytterhoeven
2025-10-17 10:09 ` Rafael J. Wysocki
2025-10-16 12:34 ` Mathieu Desnoyers
2025-10-16 12:49 ` Mark Brown
2025-10-16 12:49 ` Geert Uytterhoeven
2025-10-16 12:54 ` Mathieu Desnoyers
2025-10-16 13:07 ` Geert Uytterhoeven
2025-10-16 12:51 ` Jiri Kosina
2025-10-16 12:54 ` James Bottomley
2025-10-16 13:51 ` Steven Rostedt
2025-10-16 16:21 ` Michael S. Tsirkin
2025-10-16 12:20 ` Steven Rostedt
2025-10-15 21:29 ` Kees Cook
2025-10-15 21:40 ` Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251015-versed-active-silkworm-bb87bd@lemur \
--to=konstantin@linuxfoundation.org \
--cc=James.Bottomley@hansenpartnership.com \
--cc=dan.j.williams@intel.com \
--cc=dianders@chromium.org \
--cc=gregkh@linuxfoundation.org \
--cc=ksummit@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.