Re: [PATCH] kthread: remove worker->task self-assignment
From: Frederic Weisbecker
Date: Wed Sep 02 2026 - 10:24:35 EST
Le Tue, Sep 01, 2026 at 07:28:19PM +0100, Bradley Morgan a écrit :
> On 1 September 2026 15:06:51 BST, Frederic Weisbecker <frederic@xxxxxxxxxx>
> wrote:
> >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.
>
> Hi, I hopped on the computer,
>
> Right, so the whole warn on things is good, but I converted all the
> callers, so it'll never fire.
>
> For OOT users, maybe this'll be beneficial (but yk what their like, theyll
> remove the warn on)
>
> Guys, what do you think?
The warning is mostly to prevent from future changes to break.
Thanks.
>
> >
> >>
> >> --- Thanks!
> >>
> >https://lore.kernel.org/all/EE579805-42F2-4C58-B752-F28779EEB717@xxxxxxxxx/
> >
> >
>
> --- Thanks!
> https://lore.kernel.org/all/EE579805-42F2-4C58-B752-F28779EEB717@xxxxxxxxx/
--
Frederic Weisbecker
SUSE Labs