Re: Refactoring mutex spin on owner code

2015-01-29 Thread Peter Zijlstra
On Thu, Jan 29, 2015 at 11:14:40PM -0800, Davidlohr Bueso wrote: > > +bool mutex_spin_on_owner(struct mutex *lock, struct task_struct *owner) > > { > > + bool ret; > > + > > rcu_read_lock(); > > - while (owner_running(lock, owner)) { > > - if (need_resched()) > > + while (true)

Re: Refactoring mutex spin on owner code

2015-01-29 Thread Davidlohr Bueso
On Thu, 2015-01-29 at 17:52 -0800, Jason Low wrote: > On Thu, 2015-01-29 at 15:15 -0800, Davidlohr Bueso wrote: > > On Thu, 2015-01-29 at 12:18 -0800, Jason Low wrote: > > > /* > > > - * We break out the loop above on need_resched() and when the > > > - * owner changed, which is a sign for heav

Re: Refactoring mutex spin on owner code

2015-01-29 Thread Jason Low
On Thu, 2015-01-29 at 15:15 -0800, Davidlohr Bueso wrote: > On Thu, 2015-01-29 at 12:18 -0800, Jason Low wrote: > > /* > > -* We break out the loop above on need_resched() and when the > > -* owner changed, which is a sign for heavy contention. Return > > -* success only when lock->