Re: [RFC][PATCH] spinlock: Kill spin_unlock_wait()

From: Oleg Nesterov
Date: Wed Jan 05 2011 - 14:34:40 EST


On 01/05, Peter Zijlstra wrote:
>
> On Tue, 2011-01-04 at 17:45 +1100, Nick Piggin wrote:
> > So I agree, taking it out the back and shooting it in the head would make
> > the world a better place.
>
> There appear to be only two callsites of said horror,

Not sure I understand why spin_unlock_wait() is really awful, but OK.

> --- a/kernel/exit.c
> +++ b/kernel/exit.c
> @@ -956,7 +956,8 @@ NORET_TYPE void do_exit(long code)
> * an exiting task cleaning up the robust pi futexes.
> */
> smp_mb();
> - raw_spin_unlock_wait(&tsk->pi_lock);
> + raw_spin_lock_irq(&tsk->pi_lock);
> + raw_spin_unlock_irq(&tsk->pi_lock);

then you can kill smp_mb() above.

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/