* [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
@ 2026-02-17 13:11 Thomas Weißschuh
2026-02-17 16:29 ` Paul E. McKenney
2026-02-17 16:31 ` Sebastian Andrzej Siewior
0 siblings, 2 replies; 7+ messages in thread
From: Thomas Weißschuh @ 2026-02-17 13:11 UTC (permalink / raw)
To: Paul E. McKenney
Cc: Sebastian Andrzej Siewior, linux-kernel, Thomas Weißschuh
A recent refactoring of the kernel-docs for stop machine changed the
description of the cpus parameter from "NULL = any online cpu"
to "NULL = run on each online CPU".
However the callback is only executed on a single CPU, not all of them.
The old wording was a bit ambiguous and could have been read both ways.
Reword the documentation to be correct again and hopefully also clearer.
Fixes: fc6f89dc7078 ("stop_machine: Improve kernel-doc function-header comments")
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
---
There doesn't seem to be a formal maintainer for stop_machine.
Paul, could you take this through your tree?
---
| 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--git a/include/linux/stop_machine.h b/include/linux/stop_machine.h
index 72820503514c..01011113d226 100644
--- a/include/linux/stop_machine.h
+++ b/include/linux/stop_machine.h
@@ -99,7 +99,7 @@ static inline void print_stop_info(const char *log_lvl, struct task_struct *task
* stop_machine: freeze the machine on all CPUs and run this function
* @fn: the function to run
* @data: the data ptr to pass to @fn()
- * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
+ * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
*
* Description: This causes a thread to be scheduled on every CPU, which
* will run with interrupts disabled. Each CPU specified by @cpus will
@@ -133,7 +133,7 @@ int stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus);
* stop_machine_cpuslocked: freeze the machine on all CPUs and run this function
* @fn: the function to run
* @data: the data ptr to pass to @fn()
- * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
+ * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
*
* Same as above. Avoids nested calls to cpus_read_lock().
*
---
base-commit: 9702969978695d9a699a1f34771580cdbb153b33
change-id: 20260217-stop_machine-comment-795b2bd2a745
Best regards,
--
Thomas Weißschuh <thomas.weissschuh@linutronix.de>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
2026-02-17 13:11 [PATCH] stop_machine: Fix the documentation for a NULL cpus argument Thomas Weißschuh
@ 2026-02-17 16:29 ` Paul E. McKenney
2026-02-17 16:31 ` Sebastian Andrzej Siewior
1 sibling, 0 replies; 7+ messages in thread
From: Paul E. McKenney @ 2026-02-17 16:29 UTC (permalink / raw)
To: Thomas Weißschuh; +Cc: Sebastian Andrzej Siewior, linux-kernel
On Tue, Feb 17, 2026 at 02:11:11PM +0100, Thomas Weißschuh wrote:
> A recent refactoring of the kernel-docs for stop machine changed the
> description of the cpus parameter from "NULL = any online cpu"
> to "NULL = run on each online CPU".
>
> However the callback is only executed on a single CPU, not all of them.
> The old wording was a bit ambiguous and could have been read both ways.
>
> Reword the documentation to be correct again and hopefully also clearer.
>
> Fixes: fc6f89dc7078 ("stop_machine: Improve kernel-doc function-header comments")
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
> ---
> There doesn't seem to be a formal maintainer for stop_machine.
> Paul, could you take this through your tree?
Good catch, and I have pulled it in for further review. Perhaps the
various LLMs will test it as well? ;-)
Thanx, Paul
> ---
> include/linux/stop_machine.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/stop_machine.h b/include/linux/stop_machine.h
> index 72820503514c..01011113d226 100644
> --- a/include/linux/stop_machine.h
> +++ b/include/linux/stop_machine.h
> @@ -99,7 +99,7 @@ static inline void print_stop_info(const char *log_lvl, struct task_struct *task
> * stop_machine: freeze the machine on all CPUs and run this function
> * @fn: the function to run
> * @data: the data ptr to pass to @fn()
> - * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
> + * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
> *
> * Description: This causes a thread to be scheduled on every CPU, which
> * will run with interrupts disabled. Each CPU specified by @cpus will
> @@ -133,7 +133,7 @@ int stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus);
> * stop_machine_cpuslocked: freeze the machine on all CPUs and run this function
> * @fn: the function to run
> * @data: the data ptr to pass to @fn()
> - * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
> + * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
> *
> * Same as above. Avoids nested calls to cpus_read_lock().
> *
>
> ---
> base-commit: 9702969978695d9a699a1f34771580cdbb153b33
> change-id: 20260217-stop_machine-comment-795b2bd2a745
>
> Best regards,
> --
> Thomas Weißschuh <thomas.weissschuh@linutronix.de>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
2026-02-17 13:11 [PATCH] stop_machine: Fix the documentation for a NULL cpus argument Thomas Weißschuh
2026-02-17 16:29 ` Paul E. McKenney
@ 2026-02-17 16:31 ` Sebastian Andrzej Siewior
2026-02-17 17:01 ` Paul E. McKenney
1 sibling, 1 reply; 7+ messages in thread
From: Sebastian Andrzej Siewior @ 2026-02-17 16:31 UTC (permalink / raw)
To: Thomas Weißschuh; +Cc: Paul E. McKenney, linux-kernel
On 2026-02-17 14:11:11 [+0100], Thomas Weißschuh wrote:
> A recent refactoring of the kernel-docs for stop machine changed the
> description of the cpus parameter from "NULL = any online cpu"
> to "NULL = run on each online CPU".
>
> However the callback is only executed on a single CPU, not all of them.
> The old wording was a bit ambiguous and could have been read both ways.
>
> Reword the documentation to be correct again and hopefully also clearer.
It is the first online CPU.
It temporary freezes all CPUs and runs the function the first online
CPU. I would prefer this over "unspecified".
Unless you point that it does hold and CPU hotplug locks.
> Fixes: fc6f89dc7078 ("stop_machine: Improve kernel-doc function-header comments")
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Sebastian
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
2026-02-17 16:31 ` Sebastian Andrzej Siewior
@ 2026-02-17 17:01 ` Paul E. McKenney
2026-02-18 7:26 ` Sebastian Andrzej Siewior
0 siblings, 1 reply; 7+ messages in thread
From: Paul E. McKenney @ 2026-02-17 17:01 UTC (permalink / raw)
To: Sebastian Andrzej Siewior; +Cc: Thomas Weißschuh, linux-kernel
On Tue, Feb 17, 2026 at 05:31:05PM +0100, Sebastian Andrzej Siewior wrote:
> On 2026-02-17 14:11:11 [+0100], Thomas Weißschuh wrote:
> > A recent refactoring of the kernel-docs for stop machine changed the
> > description of the cpus parameter from "NULL = any online cpu"
> > to "NULL = run on each online CPU".
> >
> > However the callback is only executed on a single CPU, not all of them.
> > The old wording was a bit ambiguous and could have been read both ways.
> >
> > Reword the documentation to be correct again and hopefully also clearer.
>
> It is the first online CPU.
Do we want to set that in stone?
Thanx, Paul
> It temporary freezes all CPUs and runs the function the first online
> CPU. I would prefer this over "unspecified".
> Unless you point that it does hold and CPU hotplug locks.
>
> > Fixes: fc6f89dc7078 ("stop_machine: Improve kernel-doc function-header comments")
> > Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
>
> Sebastian
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
2026-02-17 17:01 ` Paul E. McKenney
@ 2026-02-18 7:26 ` Sebastian Andrzej Siewior
2026-02-18 18:08 ` Paul E. McKenney
0 siblings, 1 reply; 7+ messages in thread
From: Sebastian Andrzej Siewior @ 2026-02-18 7:26 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: Thomas Weißschuh, linux-kernel
On 2026-02-17 09:01:11 [-0800], Paul E. McKenney wrote:
> On Tue, Feb 17, 2026 at 05:31:05PM +0100, Sebastian Andrzej Siewior wrote:
> > On 2026-02-17 14:11:11 [+0100], Thomas Weißschuh wrote:
> > > A recent refactoring of the kernel-docs for stop machine changed the
> > > description of the cpus parameter from "NULL = any online cpu"
> > > to "NULL = run on each online CPU".
> > >
> > > However the callback is only executed on a single CPU, not all of them.
> > > The old wording was a bit ambiguous and could have been read both ways.
> > >
> > > Reword the documentation to be correct again and hopefully also clearer.
> >
> > It is the first online CPU.
>
> Do we want to set that in stone?
then keep it as is. I somehow don't like the wording but I'm not here
for bike shedding.
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
> Thanx, Paul
Sebastian
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
2026-02-18 7:26 ` Sebastian Andrzej Siewior
@ 2026-02-18 18:08 ` Paul E. McKenney
0 siblings, 0 replies; 7+ messages in thread
From: Paul E. McKenney @ 2026-02-18 18:08 UTC (permalink / raw)
To: Sebastian Andrzej Siewior; +Cc: Thomas Weißschuh, linux-kernel
On Wed, Feb 18, 2026 at 08:26:11AM +0100, Sebastian Andrzej Siewior wrote:
> On 2026-02-17 09:01:11 [-0800], Paul E. McKenney wrote:
> > On Tue, Feb 17, 2026 at 05:31:05PM +0100, Sebastian Andrzej Siewior wrote:
> > > On 2026-02-17 14:11:11 [+0100], Thomas Weißschuh wrote:
> > > > A recent refactoring of the kernel-docs for stop machine changed the
> > > > description of the cpus parameter from "NULL = any online cpu"
> > > > to "NULL = run on each online CPU".
> > > >
> > > > However the callback is only executed on a single CPU, not all of them.
> > > > The old wording was a bit ambiguous and could have been read both ways.
> > > >
> > > > Reword the documentation to be correct again and hopefully also clearer.
> > >
> > > It is the first online CPU.
> >
> > Do we want to set that in stone?
>
> then keep it as is. I somehow don't like the wording but I'm not here
> for bike shedding.
I agree that it probably could be improved, but it does seem clear,
correct, and unambiguous, so I also agree with leaving good enough
alone. ;-)
> Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Applied and pushed, thank you!
Thanx, Paul
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] stop_machine: Fix the documentation for a NULL cpus argument
@ 2026-03-20 10:42 Paul E. McKenney
0 siblings, 0 replies; 7+ messages in thread
From: Paul E. McKenney @ 2026-03-20 10:42 UTC (permalink / raw)
To: Sebastian Andrzej Siewior, Thomas Weißschuh; +Cc: linux-kernel
[ For the v7.1 merge window. ]
A recent refactoring of the kernel-docs for stop machine changed the
description of the cpus parameter from "NULL = any online cpu"
to "NULL = run on each online CPU".
However the callback is only executed on a single CPU, not all of them.
The old wording was a bit ambiguous and could have been read both ways.
Reword the documentation to be correct again and hopefully also clearer.
Fixes: fc6f89dc7078 ("stop_machine: Improve kernel-doc function-header comments")
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Reviewed-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
diff --git a/include/linux/stop_machine.h b/include/linux/stop_machine.h
index 72820503514cc..01011113d2263 100644
--- a/include/linux/stop_machine.h
+++ b/include/linux/stop_machine.h
@@ -99,7 +99,7 @@ static inline void print_stop_info(const char *log_lvl, struct task_struct *task
* stop_machine: freeze the machine on all CPUs and run this function
* @fn: the function to run
* @data: the data ptr to pass to @fn()
- * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
+ * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
*
* Description: This causes a thread to be scheduled on every CPU, which
* will run with interrupts disabled. Each CPU specified by @cpus will
@@ -133,7 +133,7 @@ int stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus);
* stop_machine_cpuslocked: freeze the machine on all CPUs and run this function
* @fn: the function to run
* @data: the data ptr to pass to @fn()
- * @cpus: the cpus to run @fn() on (NULL = run on each online CPU)
+ * @cpus: the cpus to run @fn() on (NULL = one unspecified online CPU)
*
* Same as above. Avoids nested calls to cpus_read_lock().
*
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-03-20 10:42 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-02-17 13:11 [PATCH] stop_machine: Fix the documentation for a NULL cpus argument Thomas Weißschuh
2026-02-17 16:29 ` Paul E. McKenney
2026-02-17 16:31 ` Sebastian Andrzej Siewior
2026-02-17 17:01 ` Paul E. McKenney
2026-02-18 7:26 ` Sebastian Andrzej Siewior
2026-02-18 18:08 ` Paul E. McKenney
2026-03-20 10:42 Paul E. McKenney
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®