diff mbox series

[06/19] soc/qman: test: Use kthread_run_on_cpu()

Message ID 20241211154035.75565-7-frederic@kernel.org (mailing list archive)
State Handled Elsewhere
Delegated to: Christophe Leroy
Headers show
Series None | expand

Commit Message

Frederic Weisbecker Dec. 11, 2024, 3:40 p.m. UTC
Use the proper API instead of open coding it.

However it looks like kthreads here could be replaced by the use of a
per-cpu workqueue instead.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
---
 drivers/soc/fsl/qbman/qman_test_stash.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Comments

LEROY Christophe Dec. 13, 2024, 7:27 a.m. UTC | #1
Le 11/12/2024 à 16:40, Frederic Weisbecker a écrit :
> Use the proper API instead of open coding it.
> 
> However it looks like kthreads here could be replaced by the use of a
> per-cpu workqueue instead.
> 
> Signed-off-by: Frederic Weisbecker <frederic@kernel.org>

Acked-by: Christophe Leroy <christophe.leroy@csgroup.eu>

> ---
>   drivers/soc/fsl/qbman/qman_test_stash.c | 6 ++----
>   1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/soc/fsl/qbman/qman_test_stash.c b/drivers/soc/fsl/qbman/qman_test_stash.c
> index b7e8e5ec884c..f4d3c2146f4f 100644
> --- a/drivers/soc/fsl/qbman/qman_test_stash.c
> +++ b/drivers/soc/fsl/qbman/qman_test_stash.c
> @@ -108,14 +108,12 @@ static int on_all_cpus(int (*fn)(void))
>   			.fn = fn,
>   			.started = ATOMIC_INIT(0)
>   		};
> -		struct task_struct *k = kthread_create(bstrap_fn, &bstrap,
> -			"hotpotato%d", cpu);
> +		struct task_struct *k = kthread_run_on_cpu(bstrap_fn, &bstrap,
> +							   cpu, "hotpotato%d");
>   		int ret;
>   
>   		if (IS_ERR(k))
>   			return -ENOMEM;
> -		kthread_bind(k, cpu);
> -		wake_up_process(k);
>   		/*
>   		 * If we call kthread_stop() before the "wake up" has had an
>   		 * effect, then the thread may exit with -EINTR without ever
Frederic Weisbecker Dec. 13, 2024, 11:46 a.m. UTC | #2
Le Fri, Dec 13, 2024 at 07:27:03AM +0000, LEROY Christophe a écrit :
> 
> 
> Le 11/12/2024 à 16:40, Frederic Weisbecker a écrit :
> > Use the proper API instead of open coding it.
> > 
> > However it looks like kthreads here could be replaced by the use of a
> > per-cpu workqueue instead.
> > 
> > Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
> 
> Acked-by: Christophe Leroy <christophe.leroy@csgroup.eu>

Thanks! Feel free to apply this patch to your tree as it's a pretty
standalone change.
diff mbox series

Patch

diff --git a/drivers/soc/fsl/qbman/qman_test_stash.c b/drivers/soc/fsl/qbman/qman_test_stash.c
index b7e8e5ec884c..f4d3c2146f4f 100644
--- a/drivers/soc/fsl/qbman/qman_test_stash.c
+++ b/drivers/soc/fsl/qbman/qman_test_stash.c
@@ -108,14 +108,12 @@  static int on_all_cpus(int (*fn)(void))
 			.fn = fn,
 			.started = ATOMIC_INIT(0)
 		};
-		struct task_struct *k = kthread_create(bstrap_fn, &bstrap,
-			"hotpotato%d", cpu);
+		struct task_struct *k = kthread_run_on_cpu(bstrap_fn, &bstrap,
+							   cpu, "hotpotato%d");
 		int ret;
 
 		if (IS_ERR(k))
 			return -ENOMEM;
-		kthread_bind(k, cpu);
-		wake_up_process(k);
 		/*
 		 * If we call kthread_stop() before the "wake up" has had an
 		 * effect, then the thread may exit with -EINTR without ever