On Thu, Apr 06, 2017 at 12:28:44PM +0200, Peter Zijlstra wrote: > On Wed, Apr 05, 2017 at 05:31:05PM -0700, Stephen Hemminger wrote: > > On Sun, 02 Apr 2017 06:28:41 +0200 > > Mike Galbraith <efa...@gmx.de> wrote: > > > > > Livelock can be triggered by setting kworkers to SCHED_FIFO, then > > > suspend/resume.. you come back from sleepy-land with a spinning > > > kworker. For whatever reason, I can only do that with an enterprise > > > like config, my standard config refuses to play, but no matter, it's > > > "Typical broken usage". > > > > > > (yield() should be rendered dead) > > > > The kernel is not normally built to have kworkers run at SCHED_FIFO. > > The user has do some action to alter the process priorities. > > > > I classify this as user error. We don't support killing kworker threads > > either. > > PI can boost anybody to FIFO, all you need is to be holding a lock.
Note that this extends to rcu_read_lock(), which can cause boosting under some cases.