From: Willy Tarreau <w@1wt.eu>
To: Jonathan Corbet <corbet@lwn.net>
Cc: skhan@linuxfoundation.org, Randy Dunlap <rdunlap@infradead.org>,
workflows@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
gregkh@linuxfoundation.org,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@kernel.org>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Simon Horman <horms@kernel.org>
Subject: [PATCH 05/14] docs: security-bugs: explain how to send a fix that can be applied
Date: Mon, 9 Nov 2026 09:02:31 +0100 [thread overview]
Message-ID: <20261109080240.29444-6-w@1wt.eu> (raw)
In-Reply-To: <20261109080240.29444-1-w@1wt.eu>
Most fixes accompanying security reports cannot be applied with git am,
either because they were damaged by the mailer, or because they just
lack a commit message, and the vast majority of our responses to
reporters are about the patch format. The doc only said to format the
fix "in a way that can be immediately merged", but by now it has
become clear that for many reporters it doesn't have the same meaning
as for maintainers.
Let's give concrete methods: preferably the report as the cover letter
of the series produced by git format-patch, then the fix sent as a reply
to the report, and as a last resort the patch attached, with a warning
that some maintainers won't look at it. Let's also explain how to deal
with public patches and private reports.
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Willy Tarreau <w@1wt.eu>
---
Documentation/process/security-bugs.rst | 46 +++++++++++++++++++++++--
1 file changed, 44 insertions(+), 2 deletions(-)
diff --git a/Documentation/process/security-bugs.rst b/Documentation/process/security-bugs.rst
index 43e5ed737dbc4..e0fb7058a999e 100644
--- a/Documentation/process/security-bugs.rst
+++ b/Documentation/process/security-bugs.rst
@@ -308,8 +308,9 @@ Please send **plain text** emails without attachments where possible.
It is much harder to have a context-quoted discussion about a complex
issue if all the details are hidden away in attachments. Think of it like a
:doc:`regular patch submission <../process/submitting-patches>`
-(even if you don't have a patch yet): describe the problem and impact, list
-reproduction steps, and follow it with a proposed fix, all in plain text.
+(even if you don't have a patch yet): describe the problem and impact, and
+list reproduction steps, all in plain text, then provide a proposed fix as
+described below.
Markdown, HTML and RST formatted reports are particularly frowned upon since
they're quite hard to read for humans and encourage to use dedicated viewers,
sometimes online, which by definition is not acceptable for a confidential
@@ -317,6 +318,47 @@ security report. Note that some mailers tend to mangle formatting of plain
text by default, please consult Documentation/process/email-clients.rst for
more info.
+Sending a fix
+~~~~~~~~~~~~~
+
+Most fixes sent along with reports cannot be applied as-is, because they were
+damaged by the mailer or lacking a commit message, forcing maintainers to ask
+for a resend. A fix must be applicable using ``git am``, which is most easily
+achieved by letting git produce and send the messages (see
+Documentation/process/submitting-patches.rst).
+
+When the fix is meant to only be sent privately, the preferred method is to
+send the report as a cover letter of a series, followed by the fix::
+
+ $ git format-patch --cover-letter -1
+ (edit 0000-cover-letter.patch and replace the subject and text with the
+ report's subject and text)
+ $ git send-email --suppress-cc=all --to=<maintainers> 000*.patch
+
+The recipients are those determined above (add ``--cc=`` for the security team
+when needed). The ``--suppress-cc=all`` option is important: without it,
+``git send-email`` also sends the messages to addresses found in the patch's
+tags (e.g. ``Cc: stable@vger.kernel.org``), which would leak the report to a
+public list.
+
+If the report was already sent, the fix may be sent as a reply to it, to the
+same recipients, for example using ``git send-email --suppress-cc=all
+--in-reply-to=<report's Message-ID>``. As a last resort, when none of these
+methods is possible, the file produced by ``git format-patch`` may be attached
+as-is to the report, but be aware that some maintainers will not look at
+attachments. However, never attach more than one patch per message without
+being explicitly invited to so, as this would significantly complicate reviews.
+
+When the fix is meant to be public (e.g. for bugs found using AI-based tools,
+see above), send it using ``git send-email`` to the maintainers and lists
+reported by get_maintainer.pl (i.e. without the ``--no-l`` option), with a
+commit message that does not detail how to exploit the bug. Then send the
+report and the reproducer privately to the maintainers (and to the security
+team when needed), mentioning the patch's Message-ID or its link on
+https://lore.kernel.org/ so that they can be matched. The report may also be
+sent as a reply to the public message, after carefully removing all public
+addresses from the To: and Cc: fields.
+
After sending the report
------------------------
--
2.52.0
next prev parent reply other threads:[~2026-11-09 8:03 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-09 8:02 [PATCH 00/14] security-bugs doc updates Willy Tarreau
2026-11-09 8:02 ` [PATCH 01/14] docs: security-bugs: reorganize the document without changing its contents Willy Tarreau
2026-11-09 8:02 ` [PATCH 02/14] docs: security-bugs: clarify when to Cc the security team Willy Tarreau
2026-11-09 8:02 ` [PATCH 03/14] docs: security-bugs: never publish reproducers of bugs with a security impact Willy Tarreau
2026-11-09 8:02 ` [PATCH 04/14] docs: threat-model: clarify the case of automatically mounted file systems Willy Tarreau
2026-11-09 8:02 ` Willy Tarreau [this message]
2026-11-09 8:02 ` [PATCH 06/14] docs: security-bugs: do not send archives or binary attachments Willy Tarreau
2026-11-09 8:02 ` [PATCH 07/14] docs: security-bugs: first-time reporters must send a single report first Willy Tarreau
2026-11-09 8:02 ` [PATCH 08/14] docs: security-bugs: explain what to do when a report gets no response Willy Tarreau
2026-11-09 8:02 ` [PATCH 09/14] docs: security-bugs: reports left unanswered for 7 days will be dropped Willy Tarreau
2026-11-09 8:02 ` [PATCH 10/14] docs: security-bugs: add a section for maintainers receiving reports Willy Tarreau
2026-11-09 8:02 ` [PATCH 11/14] docs: security-bugs: explain why directly sent reports add extra work Willy Tarreau
2026-11-09 8:02 ` [PATCH 12/14] docs: security-bugs: explain why AI-found bugs are handled publicly Willy Tarreau
2026-11-09 8:02 ` [PATCH 13/14] docs: submitting-patches: defer to security-bugs.rst for security fixes Willy Tarreau
2026-11-09 8:02 ` [PATCH 14/14] docs: netdev: align the security fixes section with security-bugs.rst Willy Tarreau
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=20261109080240.29444-6-w@1wt.eu \
--to=w@1wt.eu \
--cc=corbet@lwn.net \
--cc=davem@davemloft.net \
--cc=edumazet@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=rdunlap@infradead.org \
--cc=skhan@linuxfoundation.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
all inboxes | Powered by JetHome®