Maintainer workflows discussions
 help / color / mirror / Atom feed
From: Kees Cook <kees@kernel.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Jori Koolstra <jkoolstra@xs4all.nl>,
	"Lorenzo Stoakes (ARM)" <ljs@kernel.org>,
	Krzysztof Kozlowski <krzk@kernel.org>,
	Sasha Levin <sashal@kernel.org>,
	corbet@lwn.net, skhan@linuxfoundation.org, rdunlap@infradead.org,
	federico.vaga@vaga.pv.it, apw@canonical.com, joe@perches.com,
	workflows@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Justin Stitt <justinstitt@google.com>,
	Carlos Maiolino <cem@kernel.org>,
	Jakub Kicinski <kuba@kernel.org>,
	Brian Foster <bfoster@redhat.com>,
	Christoph Hellwig <hch@infradead.org>,
	David Disseldorp <ddiss@suse.de>, Mark Brown <broonie@kernel.org>,
	Jani Nikula <jani.nikula@intel.com>, Jens Axboe <axboe@kernel.dk>,
	"David Hildenbrand (Arm)" <david@kernel.org>,
	Vlastimil Babka <vbabka@kernel.org>,
	"Christian Brauner (Amutable)" <brauner@kernel.org>
Subject: Re: [PATCH] docs: remove Assisted-by references
Date: Wed, 14 Oct 2026 11:47:46 -0700	[thread overview]
Message-ID: <202610140951.C3D6CBF73@keescook> (raw)
In-Reply-To: <20261013201628.GO4214@killaraus.ideasonboard.com>

Oops, this reply ended up long, sorry! :P tl;dr: if you get bored,
please skip to my last paragraph.

On Tue, Oct 13, 2026 at 10:16:28PM +0200, Laurent Pinchart wrote:
> Perhaps, but I think that's missing the point. The SoB line is not
> enforceable either. Very few of our requirements and assumptions can be
> enforced. We're not telling people they can get backdoors merged in the
> kernel because we can't guarantee 100% that one won't sneak in.

I think the SoB is at least _more_ enforceable, in the sense that it
has mechanical validation attached to it ("sender matches SoB"), and
it's designed to be used to declare "chain of custody" in some way.
Specifically the SoB is about making a declaration of origin, DCO,
literally. :) So that tag does do what it says it does, and can be
meaningfully interrogated later.

But I agree, it's a statement that says "I brought this to the project",
and is _just_ a statement. What we want for the LLM stuff is "I
understand this change and am ready to convince other people about why
they, too, want it to be included in the project". "Assisted-by" never
did that. And I've always held that the place to do that is, and has
always been, in the commit message body itself.

> What this is about is setting our expectations, telling what we want and
> what we don't want. There's still value in that, and I'd argue there's
> even more value now. There will be people who won't care, there will be
> people who cheat. We've always had those, we'll keep having them, and
> we'll keep rejecting their contributions. I really don't get the
> unenforceable argument here.

I am perhaps using the wrong word, and maybe "enforceable" doesn't map
well. I think I mean "Assisted-by" is (and has always been[1]) irrelevant:
the thing we want to have is understanding, correctness, etc. This gets
called "patch quality" under the huge umbrella of what "quality" means.

And the LLMs change the nature of all of this, I agree, but the tag
didn't help at all. For example, I was (I think) responsible for
netdev's rule about "please don't send more than a dozen patches at
once; wait for us to process those before sending the next wave", due to
the treewide changes I've done over the years (where netdev also wanted
them broken up by driver, etc). And that was strictly a mechanical and
"trivial" set of changes (driven usually by Coccinelle). There was no
tag for that, and "enforcing" it was a social one. I did what they
asked, etc.

Recently we've seen an attempt to make that an enforceable delay by having
Sashiko hold off on patch reviews for 24 hours for netdev patches, etc.
In that case, there is a mechanical way to induce the result we want.
But "add a tag" wasn't it: that wasn't an "enforceable" solution to the
problem of quality and quantity.

> What would be your issue with writing commit messages manually ?

Up until about 4 months ago, I did 100% do that because the prose and
rationale coming out of the LLMs, even when guided toward specific
templates, was horrendously bad. But now it is, I think, substantially
better. I almost never take the result as-is still, but it produces a
commit message very close to what I want to see. And note that it's not
blindly producing it; I have extensive instructions about what I expect
and how it should go about it.

The resulting commit messages are better than what I would have written
alone. I spell poorly, I make typos, I forget to mention aspects that
were involved in coming to whatever design got implemented, I'm slow at
digging out the exact error or warning that was emitted into a build log,
I miss CCing someone who touched this area of code in a meaningful way
outside of get_maintainer's git history window, the list goes on and
on. The LLM reads faster, writes faster, and notices missed/forgotten
things better. So for me, I would be delinquent in NOT using its help
to write commit messages.

> Again, we're not aiming for 100% accuracy, we've never considered that
> goal reachable, LLMs or not.

I'm a maintainer for a bunch of subsystems, but I don't have remotely
anywhere near the level of patches coming in as other subsystems, so I'm
still in a little corner of gleeful obliviousness from the perspective of
dealing with review volume, but even I see drive-by patch dumps. I'm not
sure if/how this is scalable, or even the right answer, but the signals
I have for patch review tend to be:

- sender and area trust/reputation (If I'm getting a patch from someone
  that I've taken patches from before, I know I have in the past assessed
  their work as useful/helpful/robust/whatever. And I know what they
  have touched before: if I've landed a bunch of binfmt_elf patches from
  someone, and then later they send me pstore patches, I'm going to be
  surprised and then need to examine this new area of work from them.)

- testing (how was the change tested, how will it continue to be tested,
  etc. Compile-time? Run-time? Unit? Integration?)

- correctness, utility, maintainability, all the rest (the "core" review
  work)

Things like Sashiko give us some mechanistic view into "correctness"
(and I've been working on adding an analysis stage to Sashiko to cover
"testing"[2]). The first one (the matrix of trust across sender vs code
area) look significantly more filterable, though. (The parallel threads
on "ignore all new submitters" is an extreme, and IMO bad, form of
that filter.) Maintainers had been doing this filtering in their heads
basically, and the LLMs changed the volume of people sending patches,
and similarly disrupted the trust part too where suddenly people who
used to send good patches might be sending bad patches. The intent, as
I saw it, of "Assisted-by" was to give a signal about this latter form
(known person sending possibly bad patches suddenly), but it didn't really
work, and then both the LLMs got better and people using them figured out
(I hope) how to wield them better.

So, I'm kind of back to looking at some way to scale my understanding
of any given contributor's reputation[3], area of work, ownership
and responsibility of fixing mistakes, depth of understanding
of various topics outside of their common area of kernel work
(compilers? user-space?), rationality, friendliness, communication style,
etc. And my evaluative criteria is going to be different from other
maintainer's too, so outside of basic facts ("contributor has sent X
many patches"), this is highly subjective stuff that I suspect will
resist objective mechanistic handling.

-Kees

[1] https://lore.kernel.org/all/202507241337.F9595E1D@keescook/
[2] https://github.com/masoncl/review-prompts/pull/100
[3] https://lore.kernel.org/all/35426E86-9663-48D7-8899-B82D62D04A84@kernel.org/

-- 
Kees Cook

  parent reply	other threads:[~2026-10-14 18:47 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-09  8:31 [PATCH] docs: remove Assisted-by references Sasha Levin
2026-10-09  9:38 ` Laurent Pinchart
2026-10-09 10:09   ` Sasha Levin
2026-10-09 10:05 ` Krzysztof Kozlowski
2026-10-09 10:24   ` Greg KH
2026-10-09 15:20   ` Jonathan Corbet
2026-10-11  1:04     ` Steven Rostedt
2026-10-12 15:42   ` Lorenzo Stoakes (ARM)
2026-10-13 11:19     ` Jori Koolstra
2026-10-13 12:38       ` Laurent Pinchart
2026-10-13 12:50         ` Jori Koolstra
2026-10-13 13:01           ` Laurent Pinchart
2026-10-13 13:24         ` Ricardo B. Marlière (SUSE)
2026-10-13 12:49       ` Lorenzo Stoakes (ARM)
2026-10-13 17:16         ` Laurent Pinchart
2026-10-13 12:31     ` Laurent Pinchart
2026-10-13 12:59       ` Lorenzo Stoakes (ARM)
2026-10-13 13:04         ` Krzysztof Kozlowski
2026-10-13 13:07           ` Lorenzo Stoakes (ARM)
2026-10-13 13:12         ` Laurent Pinchart
2026-10-13 13:29           ` Lorenzo Stoakes (ARM)
2026-10-13 13:37             ` Jori Koolstra
2026-10-13 14:52             ` Kees Cook
2026-10-13 14:54               ` Jori Koolstra
2026-10-13 14:58               ` Jori Koolstra
2026-10-13 17:12                 ` Kees Cook
2026-10-13 17:42                   ` Laurent Pinchart
2026-10-13 19:25                     ` Kees Cook
2026-10-13 20:16                       ` Laurent Pinchart
2026-10-13 20:45                         ` Linus Torvalds
2026-10-14 13:56                           ` Lorenzo Stoakes (ARM)
2026-10-14 18:47                         ` Kees Cook [this message]
2026-10-13 15:02               ` Lorenzo Stoakes (ARM)
2026-10-13 16:58                 ` Kees Cook
2026-10-13 17:32             ` Laurent Pinchart
2026-10-14  3:23             ` Theodore Tso
2026-10-14 11:23               ` Mark Brown
2026-10-14 13:08               ` Jori Koolstra
2026-10-14 13:42               ` Lorenzo Stoakes (ARM)
2026-10-14 14:15                 ` Mark Brown
2026-10-13  4:24 ` Kees Cook
2026-10-13  5:56   ` Randy Dunlap
2026-10-13  6:18     ` Greg KH
2026-10-13  8:25     ` Kees Cook
2026-10-13 12:28       ` [PATCH] docs: remove Assisted-by reference Jori Koolstra
2026-10-13 12:55         ` Laurent Pinchart
2026-10-13 13:03           ` Jori Koolstra
2026-10-13 13:10             ` Laurent Pinchart
2026-10-13 13:20               ` Jori Koolstra
2026-10-13 13:55                 ` Laurent Pinchart
2026-10-13 15:18           ` Mark Brown
2026-10-13 17:07             ` Laurent Pinchart
2026-10-13 20:01               ` Shuah Khan

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=202610140951.C3D6CBF73@keescook \
    --to=kees@kernel.org \
    --cc=apw@canonical.com \
    --cc=axboe@kernel.dk \
    --cc=bfoster@redhat.com \
    --cc=brauner@kernel.org \
    --cc=broonie@kernel.org \
    --cc=cem@kernel.org \
    --cc=corbet@lwn.net \
    --cc=david@kernel.org \
    --cc=ddiss@suse.de \
    --cc=federico.vaga@vaga.pv.it \
    --cc=gregkh@linuxfoundation.org \
    --cc=hch@infradead.org \
    --cc=jani.nikula@intel.com \
    --cc=jkoolstra@xs4all.nl \
    --cc=joe@perches.com \
    --cc=justinstitt@google.com \
    --cc=krzk@kernel.org \
    --cc=kuba@kernel.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ljs@kernel.org \
    --cc=rdunlap@infradead.org \
    --cc=sashal@kernel.org \
    --cc=skhan@linuxfoundation.org \
    --cc=torvalds@linux-foundation.org \
    --cc=vbabka@kernel.org \
    --cc=workflows@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox