Re: [PATCH] kthread: remove worker->task self-assignment
From: Frederic Weisbecker
Date: Tue Sep 01 2026 - 11:09:35 EST
Le Tue, Sep 01, 2026 at 02:57:38PM +0100, Bradley Morgan a écrit :
> On 1 September 2026 13:49:00 BST, Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> wrote:
> >On Tue, Sep 01, 2026 at 02:45:43PM +0200, Frederic Weisbecker wrote:
> >> Hi,
> >>
> >> Le Sat, Aug 29, 2026 at 04:18:48PM +0000, Bradley Morgan a écrit :
> >> > From: Bradley Morgan <brads@xxxxxxxxxxxxxx>
> >> >
> >> > All kthread worker users now create their workers with
> >> > kthread_create_worker*(), which sets worker->task before the worker
> >> > starts. The self-assignment in kthread_worker_fn() is dead code now.
> >>
> >> How could it be created before?
> >>
> >> >
> >> > Remove it.
> >> >
> >> > Signed-off-by: Bradley Morgan <brads@xxxxxxxxxxxxxx>
> >> > ---
> >> > kernel/kthread.c | 7 -------
> >> > 1 file changed, 7 deletions(-)
> >> >
> >> > diff --git a/kernel/kthread.c b/kernel/kthread.c
> >> > index 63beb59b7a3d..18bc702e8d2d 100644
> >> > --- a/kernel/kthread.c
> >> > +++ b/kernel/kthread.c
> >> > @@ -987,13 +987,6 @@ int kthread_worker_fn(void *worker_ptr)
> >> > struct kthread_worker *worker = worker_ptr;
> >> > struct kthread_work *work;
> >> >
> >> > - /*
> >> > - * FIXME: Update the check and remove the assignment when all kthread
> >> > - * worker users are created using kthread_create_worker*() functions.
> >> > - */
> >> > - WARN_ON(worker->task && worker->task != current);
> >>
> >> Should we keep a WARN_ON(worker->task != current) here?
> >
> >I vote yes! Paranoia is good :-)
> >
>
>
> Yeah, but it *should* be useless.
Famous last words :-)
> Do you really want me to readd the warn
> statement? Maybe add some text, like
>
> "worker->task is deprecated"?
Is it deprecated? We still need that field for wakeup on queue at least.
Don't bother with a message, it's only a sanity check.
Thanks.
>
> --- Thanks!
> https://lore.kernel.org/all/EE579805-42F2-4C58-B752-F28779EEB717@xxxxxxxxx/
--
Frederic Weisbecker
SUSE Labs