On Fri, Feb 27, 2015 at 10:52:40AM +0100, Peter Zijlstra wrote:
> On Mon, Feb 16, 2015 at 09:13:36PM +0100, Oleg Nesterov wrote:
>
> > diff --git a/kernel/futex.c b/kernel/futex.c
> > index b101381..c1104a8 100644
> > +++ b/kernel/futex.c
> > @@ -716,11 +716,13 @@ void exit_pi_state_list(struct ta
On Mon, Feb 16, 2015 at 09:13:36PM +0100, Oleg Nesterov wrote:
> diff --git a/kernel/futex.c b/kernel/futex.c
> index b101381..c1104a8 100644
> +++ b/kernel/futex.c
> @@ -716,11 +716,13 @@ void exit_pi_state_list(struct task_struct *curr)
>
> if (!futex_cmpxchg_enabled)
> ret
It is absolutely not clear why attach_to_pi_owner() returns -EAGAIN which
triggers "retry" if the lock owner is PF_EXITING but not PF_EXITPIDONE.
This burns CPU for no reason and this can even livelock if the rt_task()
caller preempts a PF_EXITING owner.
Remove the PF_EXITING check altogether. We
3 matches
Mail list logo