* [PATCH v1] clang-format: Fix formatting of guard()
@ 2026-07-08 10:57 Mickaël Salaün
2026-07-08 11:06 ` Miguel Ojeda
2026-07-08 15:48 ` Bart Van Assche
0 siblings, 2 replies; 9+ messages in thread
From: Mickaël Salaün @ 2026-07-08 10:57 UTC (permalink / raw)
To: Miguel Ojeda
Cc: Mickaël Salaün, linux-kernel, Nathan Chancellor,
Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar,
Peter Zijlstra
The previous fix was overzealous and included guard() along with
scoped_guard(), but only the later takes curly braces.
The original fix introduced this issue:
- guard(rcu)();
+ guard(rcu)
+ ();
This is especially visible with security/landlock/*.[ch] which is fully
formatted with clang-format.
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Günther Noack <gnoack@google.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Fixes: 99df2a8eba34 ("clang-format: fix formatting of guard() and scoped_guard() statements")
Closes: https://lore.kernel.org/r/20260702.Eibibi4the9j@digikod.net
Signed-off-by: Mickaël Salaün <mic@digikod.net>
---
.clang-format | 1 -
1 file changed, 1 deletion(-)
diff --git a/.clang-format b/.clang-format
index 6a3de86ab27a..14b44703e0a9 100644
--- a/.clang-format
+++ b/.clang-format
@@ -481,7 +481,6 @@ ForEachMacros:
- 'genradix_for_each'
- 'genradix_for_each_from'
- 'genradix_for_each_reverse'
- - 'guard'
- 'hash_for_each'
- 'hash_for_each_possible'
- 'hash_for_each_possible_rcu'
--
2.54.0
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 10:57 [PATCH v1] clang-format: Fix formatting of guard() Mickaël Salaün @ 2026-07-08 11:06 ` Miguel Ojeda 2026-07-08 11:10 ` Mickaël Salaün 2026-07-08 15:48 ` Bart Van Assche 1 sibling, 1 reply; 9+ messages in thread From: Miguel Ojeda @ 2026-07-08 11:06 UTC (permalink / raw) To: Mickaël Salaün Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 8, 2026 at 12:57 PM Mickaël Salaün <mic@digikod.net> wrote: > > The previous fix was overzealous and included guard() along with > scoped_guard(), but only the later takes curly braces. > > The original fix introduced this issue: > - guard(rcu)(); > + guard(rcu) > + (); > > This is especially visible with security/landlock/*.[ch] which is fully > formatted with clang-format. This one would go away on its own if one runs the command above from where the list is meant to be generated -- but `scoped_guard()` would be also removed. I guess I can just have a section of explicit ones that come from outside the line. I can pick this one through `clang-format` and take the chance to give an update to the list. Thanks! Cheers, Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 11:06 ` Miguel Ojeda @ 2026-07-08 11:10 ` Mickaël Salaün 2026-07-08 11:11 ` Miguel Ojeda 0 siblings, 1 reply; 9+ messages in thread From: Mickaël Salaün @ 2026-07-08 11:10 UTC (permalink / raw) To: Miguel Ojeda Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 08, 2026 at 01:06:12PM +0200, Miguel Ojeda wrote: > On Wed, Jul 8, 2026 at 12:57 PM Mickaël Salaün <mic@digikod.net> wrote: > > > > The previous fix was overzealous and included guard() along with > > scoped_guard(), but only the later takes curly braces. > > > > The original fix introduced this issue: > > - guard(rcu)(); > > + guard(rcu) > > + (); > > > > This is especially visible with security/landlock/*.[ch] which is fully > > formatted with clang-format. > > This one would go away on its own if one runs the command above from > where the list is meant to be generated -- but `scoped_guard()` would > be also removed. What do you mean? Running clang-format -i security/landlock/*.[ch] does some changes. > > I guess I can just have a section of explicit ones that come from > outside the line. > > I can pick this one through `clang-format` and take the chance to give > an update to the list. Yes please. > > Thanks! > > Cheers, > Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 11:10 ` Mickaël Salaün @ 2026-07-08 11:11 ` Miguel Ojeda 2026-07-08 11:20 ` Mickaël Salaün 0 siblings, 1 reply; 9+ messages in thread From: Miguel Ojeda @ 2026-07-08 11:11 UTC (permalink / raw) To: Mickaël Salaün Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 8, 2026 at 1:10 PM Mickaël Salaün <mic@digikod.net> wrote: > > What do you mean? Running clang-format -i security/landlock/*.[ch] does > some changes. I mean the command on the `.clang-format` file: # Taken from: # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ tools/ \ # | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \ # | LC_ALL=C sort -u Cheers, Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 11:11 ` Miguel Ojeda @ 2026-07-08 11:20 ` Mickaël Salaün 2026-07-08 11:31 ` Miguel Ojeda 0 siblings, 1 reply; 9+ messages in thread From: Mickaël Salaün @ 2026-07-08 11:20 UTC (permalink / raw) To: Miguel Ojeda Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 08, 2026 at 01:11:31PM +0200, Miguel Ojeda wrote: > On Wed, Jul 8, 2026 at 1:10 PM Mickaël Salaün <mic@digikod.net> wrote: > > > > What do you mean? Running clang-format -i security/landlock/*.[ch] does > > some changes. > > I mean the command on the `.clang-format` file: > > # Taken from: > # git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' > include/ tools/ \ > # | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \ > # | LC_ALL=C sort -u Ok, so the guard/scoped_guard changes will disappear once you refreshed the .clang-format file. This means that I should not apply the Landlock changes [1] right? [1] https://lore.kernel.org/all/20260708110635.2083515-1-mic@digikod.net/ Do you plan to send this file update with a following v7.2-rc? > > Cheers, > Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 11:20 ` Mickaël Salaün @ 2026-07-08 11:31 ` Miguel Ojeda 2026-07-08 12:34 ` Mickaël Salaün 0 siblings, 1 reply; 9+ messages in thread From: Miguel Ojeda @ 2026-07-08 11:31 UTC (permalink / raw) To: Mickaël Salaün Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 8, 2026 at 1:20 PM Mickaël Salaün <mic@digikod.net> wrote: > > Ok, so the guard/scoped_guard changes will disappear once you refreshed > the .clang-format file. This means that I should not apply the Landlock > changes [1] right? It would disappear, but that is why I said that we could have a section of the list that is for explicitly-added entries, where we could add `scoped_guard` back. So we could 1) apply your patch, 2) have a patch to add a new section of the list with the `scoped_guard` entry and a comment, 3) update the main list, keeping that new section below or above. (If you want to send that series, please feel free, of course!) Does that clarify? Having said that, `clang-format` is not enforced (unlike `rustfmt`), so you could apply your patch (or not) independently. Cheers, Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 11:31 ` Miguel Ojeda @ 2026-07-08 12:34 ` Mickaël Salaün 2026-07-08 12:49 ` Miguel Ojeda 0 siblings, 1 reply; 9+ messages in thread From: Mickaël Salaün @ 2026-07-08 12:34 UTC (permalink / raw) To: Miguel Ojeda Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 08, 2026 at 01:31:47PM +0200, Miguel Ojeda wrote: > On Wed, Jul 8, 2026 at 1:20 PM Mickaël Salaün <mic@digikod.net> wrote: > > > > Ok, so the guard/scoped_guard changes will disappear once you refreshed > > the .clang-format file. This means that I should not apply the Landlock > > changes [1] right? > > It would disappear, but that is why I said that we could have a > section of the list that is for explicitly-added entries, where we > could add `scoped_guard` back. > > So we could 1) apply your patch, 2) have a patch to add a new section > of the list with the `scoped_guard` entry and a comment, 3) update the > main list, keeping that new section below or above. OK, that makes sense. :) > > (If you want to send that series, please feel free, of course!) I guess parts 2 and 3 should probably be send for v7.13 (it's a big patch) whereas part 1 in 7.12-rcX, so I'll let you handle that properly. > > Does that clarify? Yes, thanks. I'll keep the Landlock-specific patch I sent. > > Having said that, `clang-format` is not enforced (unlike `rustfmt`), > so you could apply your patch (or not) independently. Yes, but I enforce it for Landlock, which helps a lot: - security/landlock/ - include/uapi/linux/landlock.h - tools/testing/selftests/landlock/ - samples/landlock/ Regards, Mickaël ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 12:34 ` Mickaël Salaün @ 2026-07-08 12:49 ` Miguel Ojeda 0 siblings, 0 replies; 9+ messages in thread From: Miguel Ojeda @ 2026-07-08 12:49 UTC (permalink / raw) To: Mickaël Salaün Cc: Miguel Ojeda, linux-kernel, Nathan Chancellor, Andrew Morton, Bart Van Assche, Günther Noack, Ingo Molnar, Peter Zijlstra On Wed, Jul 8, 2026 at 2:34 PM Mickaël Salaün <mic@digikod.net> wrote: > > I guess parts 2 and 3 should probably be send for v7.13 (it's a big > patch) whereas part 1 in 7.12-rcX, so I'll let you handle that properly. Sometimes I sent these PRs to Linus in -rcs, to catch new code, so it should be fine, I can do it either way. > Yes, thanks. I'll keep the Landlock-specific patch I sent. Sounds good. > Yes, but I enforce it for Landlock, which helps a lot: Yeah, that is very good, and I am very glad to see it is useful for you and that you could get to enforcement. What I meant is that it cannot really be "truly enforced" across trees, especially if the config keeps changing and so on; unlike `rustfmt`, where one is not supposed to push anything to linux-next that doesn't pass. I mean, I would love if we could, but it is a very long-term thing. Over time, my hope is that more subsystems start enforcing it on their own and so on. Cheers, Miguel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v1] clang-format: Fix formatting of guard() 2026-07-08 10:57 [PATCH v1] clang-format: Fix formatting of guard() Mickaël Salaün 2026-07-08 11:06 ` Miguel Ojeda @ 2026-07-08 15:48 ` Bart Van Assche 1 sibling, 0 replies; 9+ messages in thread From: Bart Van Assche @ 2026-07-08 15:48 UTC (permalink / raw) To: Mickaël Salaün, Miguel Ojeda Cc: linux-kernel, Nathan Chancellor, Andrew Morton, Günther Noack, Ingo Molnar, Peter Zijlstra On 7/8/26 3:57 AM, Mickaël Salaün wrote: > The previous fix was overzealous and included guard() along with > scoped_guard(), but only the later takes curly braces. > > The original fix introduced this issue: > - guard(rcu)(); > + guard(rcu) > + (); Reviewed-by: Bart Van Assche <bvanassche@acm.org> ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2026-07-08 15:48 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-07-08 10:57 [PATCH v1] clang-format: Fix formatting of guard() Mickaël Salaün 2026-07-08 11:06 ` Miguel Ojeda 2026-07-08 11:10 ` Mickaël Salaün 2026-07-08 11:11 ` Miguel Ojeda 2026-07-08 11:20 ` Mickaël Salaün 2026-07-08 11:31 ` Miguel Ojeda 2026-07-08 12:34 ` Mickaël Salaün 2026-07-08 12:49 ` Miguel Ojeda 2026-07-08 15:48 ` Bart Van Assche
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.