On Thu, Sep 29, 2016 at 10:43:54AM -0400, Thomas Gleixner wrote: > On Mon, 26 Sep 2016, Peter Zijlstra wrote: > > > On Mon, Sep 26, 2016 at 11:37:27AM -0400, Steven Rostedt wrote: > > > On Mon, 26 Sep 2016 11:35:03 -0400 > > > Steven Rostedt <rost...@goodmis.org> wrote: > > > > > > > Especially now that the code after the spin_unlock(&hb->lock) is now a > > > > critical section (preemption is disable). There's nothing obvious in > > > > futex.c that says it is. > > > > > > Not to mention, this looks like it will break PREEMPT_RT as wake_up_q() > > > calls sleepable spin locks. > > > > What locks would that be? > > None :) > > It still breaks RT in the futex case due to: > > deboost = rt_mutex_futex_unlock(); > > spin_unlock(&hb->lock); > ....
Yeah, noticed that already. Am currently trying to untangle the pi_state locking rules.