[PATCH next] kthread: Fix a NULL vs IS_ERR() bug

Dan Carpenter posted 1 patch 1 year ago
kernel/kthread.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH next] kthread: Fix a NULL vs IS_ERR() bug
Posted by Dan Carpenter 1 year ago
The kthread_create_worker_on_node() function returns error pointers,
never NULL.  Fix the check to match.

Fixes: e9853c812f86 ("treewide: Introduce kthread_run_worker[_on_cpu]()")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 kernel/kthread.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/kthread.c b/kernel/kthread.c
index 83bf73d2355c..922f15762ec3 100644
--- a/kernel/kthread.c
+++ b/kernel/kthread.c
@@ -1124,7 +1124,7 @@ kthread_create_worker_on_cpu(int cpu, unsigned int flags,
 	struct kthread_worker *worker;
 
 	worker = kthread_create_worker_on_node(flags, cpu_to_node(cpu), namefmt, cpu);
-	if (worker)
+	if (!IS_ERR(worker))
 		kthread_bind(worker->task, cpu);
 
 	return worker;
-- 
2.45.2
Re: [PATCH next] kthread: Fix a NULL vs IS_ERR() bug
Posted by Frederic Weisbecker 1 year ago
Le Fri, Dec 13, 2024 at 05:25:02PM +0300, Dan Carpenter a écrit :
> The kthread_create_worker_on_node() function returns error pointers,
> never NULL.  Fix the check to match.
> 
> Fixes: e9853c812f86 ("treewide: Introduce kthread_run_worker[_on_cpu]()")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
>  kernel/kthread.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kernel/kthread.c b/kernel/kthread.c
> index 83bf73d2355c..922f15762ec3 100644
> --- a/kernel/kthread.c
> +++ b/kernel/kthread.c
> @@ -1124,7 +1124,7 @@ kthread_create_worker_on_cpu(int cpu, unsigned int flags,
>  	struct kthread_worker *worker;
>  
>  	worker = kthread_create_worker_on_node(flags, cpu_to_node(cpu), namefmt, cpu);
> -	if (worker)
> +	if (!IS_ERR(worker))
>  		kthread_bind(worker->task, cpu);

Whoops!

Can I fold this to the offending patch? I can add your
Co-developed-by: / Signed-off-by: ?

Thanks.

>  
>  	return worker;
> -- 
> 2.45.2
> 
Re: [PATCH next] kthread: Fix a NULL vs IS_ERR() bug
Posted by Dan Carpenter 1 year ago
On Fri, Dec 13, 2024 at 03:43:13PM +0100, Frederic Weisbecker wrote:
> Le Fri, Dec 13, 2024 at 05:25:02PM +0300, Dan Carpenter a écrit :
> > The kthread_create_worker_on_node() function returns error pointers,
> > never NULL.  Fix the check to match.
> > 
> > Fixes: e9853c812f86 ("treewide: Introduce kthread_run_worker[_on_cpu]()")
> > Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> > ---
> >  kernel/kthread.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/kernel/kthread.c b/kernel/kthread.c
> > index 83bf73d2355c..922f15762ec3 100644
> > --- a/kernel/kthread.c
> > +++ b/kernel/kthread.c
> > @@ -1124,7 +1124,7 @@ kthread_create_worker_on_cpu(int cpu, unsigned int flags,
> >  	struct kthread_worker *worker;
> >  
> >  	worker = kthread_create_worker_on_node(flags, cpu_to_node(cpu), namefmt, cpu);
> > -	if (worker)
> > +	if (!IS_ERR(worker))
> >  		kthread_bind(worker->task, cpu);
> 
> Whoops!
> 
> Can I fold this to the offending patch? I can add your
> Co-developed-by: / Signed-off-by: ?

Sure.  Just add my Signed-off-by probably.  Co-developed-by seems too
much.

regards,
dan carpenter