On Tue, Mar 31, 2015 at 03:37:45PM -0400, Tejun Heo wrote: > Hello, Chris. > > On Tue, Mar 31, 2015 at 03:25:59PM -0400, [email protected] wrote: > > From: Chris Metcalf <[email protected]> > > > > When queuing work, we should avoid queuing it on the local cpu if > > we are using WORK_CPU_UNBOUND and the local cpu is nohz_full, since > > the workqueue will mean a later interrupt of the nohz_full process > > that presumably would prefer continuing to have 100% of the core > > without interrupts. > > > > Likewise, remove the nohz_full cores from unbound workqueues. If > > all the cores are nohz_full, we leave them in. > > The problem with this is that workqueue currently doesn't distinguish > why work items are queued on per-cpu workqueues. It can't tell > whether being bound to local CPU is for correctness or optimization > and thus can't break local execution guarantee for anybody. We need > to hunt down all the ones which depend on local execution and annotate > them with explicit queue_work_on() before being able to do this.
This is moot on unbound workqueues, they can run wherever so it can never be a correctness thing, right? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

