On 12/24/19 4:54 AM, Hillf Danton wrote: > > On Mon, 23 Dec 2019 08:15:00 -0700 Jens Axboe wrote: >> >> On 12/22/19 7:41 PM, Hillf Danton wrote: >>> >>> Reschedule the current IO worker if it is becoming a cpu hog. >> >> Might make more sense to put this a bit earlier, to avoid the >> awkward lock juggle. In theory it shouldn't make a difference >> if we do it _before_ doing new work, or _after_ doing work. We >> should only be rescheduling if it's running for quite a while. >> >> How about putting it after the flushing of signals instead? > > > All right, thanks. > > Hillf > --->8--- > From: Hillf Danton <hdanton@xxxxxxxx> > Subject: [RFC PATCH] io-wq: kill cpu hog worker > > Reschedule the current IO worker to cut the risk that it is becoming > a cpu hog. > > Signed-off-by: Hillf Danton <hdanton@xxxxxxxx> > --- > > --- a/fs/io-wq.c > +++ b/fs/io-wq.c > @@ -432,6 +432,8 @@ next: > if (signal_pending(current)) > flush_signals(current); > > + cond_resched(); > + > spin_lock_irq(&worker->lock); > worker->cur_work = work; > spin_unlock_irq(&worker->lock); > -- That looks better, applied. -- Jens Axboe