From: Brendan Jackman <jackmanb@google.com>
To: Andy Whitcroft <apw@canonical.com>, Joe Perches <joe@perches.com>,
Dwaipayan Ray <dwaipayanray1@gmail.com>,
Lukas Bulwahn <lukas.bulwahn@gmail.com>,
Jonathan Corbet <corbet@lwn.net>,
Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Cc: linux-kernel@vger.kernel.org, workflows@vger.kernel.org,
linux-doc@vger.kernel.org, Brendan Jackman <jackmanb@google.com>
Subject: [PATCH RESEND v2 2/2] docs: checkpatch: Document checkpatch-ignore feature
Date: Mon, 17 Feb 2025 17:32:11 +0000 [thread overview]
Message-ID: <20250217-checkpatch-ignore-v2-2-ecfb50e03bb0@google.com> (raw)
In-Reply-To: <20250217-checkpatch-ignore-v2-0-ecfb50e03bb0@google.com>
If included in patch descriptions, this will function much like the
--ignore flag.
It requires some rather obscure Git features to take advantage of
this, so provide some examples of how to do that.
Signed-off-by: Brendan Jackman <jackmanb@google.com>
---
Documentation/dev-tools/checkpatch.rst | 46 ++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/Documentation/dev-tools/checkpatch.rst b/Documentation/dev-tools/checkpatch.rst
index abb3ff6820766ee0c29112b256bcc44ce41fffba..6215b24b25b36709c815cf08de33f1609c80c0c7 100644
--- a/Documentation/dev-tools/checkpatch.rst
+++ b/Documentation/dev-tools/checkpatch.rst
@@ -12,6 +12,49 @@ Checkpatch is not always right. Your judgement takes precedence over checkpatch
messages. If your code looks better with the violations, then its probably
best left alone.
+Inoring violations
+==================
+
+As well as the --ignore flag documented below, violation types can be ignored
+for a specific patch by including a block after the "---" in the following
+format::
+
+ Notes(checkpatch-ignore):
+ TYPE_1,TYPE_2
+ TYPE_3
+
+If using Git, you can store that information alongside your commit using
+`notes <https://git-scm.com/docs/git-notes>`_. To set this up:
+
+1. Configure git to include the `checkpatch-ignore` notes ref in formatted
+ patches::
+
+ git config set format.notes checkpatch-ignore
+
+ If you use checkpatch in `--git` mode, this isn't necessary, it will include
+ the `checkpatch-ignore` note regardless.
+
+2. Configure git to persist notes across amends and rebases::
+
+ git config set notes.rewriteRef "refs/notes/checkpatch-ignore"
+
+ (To enable this behaviour for _all_ notes, set `refs/notes/**` instead).
+
+ Also ensure that `notes.rewrite.rebase` and `notes.rewrite.amend` have not
+ been set to `false`.
+
+3. Now, to set the note on the HEAD commit, use a command like::
+
+ git notes --ref checkpatch-ignore add -m "TYPE_1,TYPE_2"
+
+ Beware that blank lines terminate the `checkpatch-ignore` block, so if you
+ use `git notes append` to ignore additional types, you'll need to also set
+ `--no-separator`::
+
+ git notes --ref checkpatch-ignore append -m "TYPE_3" --no-separator
+
+To see the names of the error type in checkpatch output, set the `--show-types`
+option.
Options
=======
@@ -114,6 +157,9 @@ Available options:
Checkpatch will not emit messages for the specified types.
+ Note that violations can also be permanently disabled using the
+ Checkpatch-ignore patch footer.
+
Example::
./scripts/checkpatch.pl mypatch.patch --ignore EMAIL_SUBJECT,BRACES
--
2.48.1.601.g30ceb7b040-goog
prev parent reply other threads:[~2025-02-17 17:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-17 17:32 [PATCH RESEND v2 0/2] checkpatch: Add support for checkpatch-ignore note Brendan Jackman
2025-02-17 17:32 ` [PATCH RESEND v2 1/2] checkpatch: Add support for checkpatch-ignore notes Brendan Jackman
2025-02-17 17:32 ` Brendan Jackman [this message]
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=20250217-checkpatch-ignore-v2-2-ecfb50e03bb0@google.com \
--to=jackmanb@google.com \
--cc=apw@canonical.com \
--cc=corbet@lwn.net \
--cc=dwaipayanray1@gmail.com \
--cc=joe@perches.com \
--cc=konstantin@linuxfoundation.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas.bulwahn@gmail.com \
--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