On Mon, Apr 08, 2019 at 12:45:05PM -0700, Tejun Heo wrote: > Hello, > > On Wed, Mar 13, 2019 at 05:55:48PM +0100, Sebastian Andrzej Siewior wrote: > > From: Thomas Gleixner <[email protected]> > > > > The worker accounting for CPU bound workers is plugged into the core > > scheduler code and the wakeup code. This is not a hard requirement and > > can be avoided by keeping track of the state in the workqueue code > > itself. > > > > Keep track of the sleeping state in the worker itself and call the > > notifier before entering the core scheduler. There might be false > > positives when the task is woken between that call and actually > > scheduling, but that's not really different from scheduling and being > > woken immediately after switching away. When nr_running is updated when > > the task is retunrning from schedule() then it is later compared when it > > is done from ttwu(). > > > > Signed-off-by: Thomas Gleixner <[email protected]> > > Cc: Daniel Bristot de Oliveira <[email protected]> > > Link: http://lkml.kernel.org/r/[email protected] > > Link: > > http://lkml.kernel.org/r/ad2b29b5715f970bffc1a7026cabd6ff0b24076a.1532952814.git.bris...@redhat.com > > Signed-off-by: Thomas Gleixner <[email protected]> > > [bigeasy: preempt_disable() around wq_worker_sleeping() by Daniel Bristot de > > Oliveira] > > Signed-off-by: Sebastian Andrzej Siewior <[email protected]> > > This looks good from wq side. Peter, are you okay with routing this > through the wq tree? If you wanna take it through the sched tree, > please feel free to add > > Acked-by: Tejun Heo <[email protected]>
If you don't mind I'll take it through the sched tree, because while looking at it I did a few cleanups on top. Thanks!

