Re: [PATCH v9 06/12] kthread: Add kthread_drain_worker()

From: Tejun Heo
Date: Fri Jun 24 2016 - 11:54:55 EST


Hello,

On Fri, Jun 24, 2016 at 09:05:15AM +0200, Peter Zijlstra wrote:
> > Given how rare that is
>
> Could you then not remove/rework these few cases for workqueue as well
> and make that 'better' too?

Usage of draining is rare for workqueue but that still means several
legitimate users. With draining there, it's logical to use it during
shutdown. I don't think it makes sense to change it on workqueue
side.

> > and the extra
> > complexity of identifying self-requeueing cases, let's forget about
> > draining and on destruction clear the worker pointer to block further
> > queueing and then flush whatever is in flight.
>
> You're talking about regular workqueues here?

No, kthread worker. It's unlikely that kthread worker is gonna need
chained draining especially given that most of its usages are gonna be
conversions from raw kthread usages. We won't lose much if anything
by just ignoring draining and making the code simpler.

Thanks.

--
tejun