Thread (6 messages) 6 messages, 2 authors, 2010-04-16

Re: Possible bug with mutex adaptative spinning

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2010-04-16 23:41:33
Also in: lkml

On Fri, 2010-04-16 at 23:27 +0200, Peter Zijlstra wrote:
quoted
If the owner is actually running, it may do so for a very long time. It
looks to me that everybody trying to take the mutex will thus spin and
never get out of the spin loop until the owner stops running.
The inner-most spin loop breaks out on need_resched():

                if (task_thread_info(rq->curr) != owner || need_resched())
                        return 0; 
You are right, this was only a problem in conjunction with the other bug
returning 1 all the time, causing us to ignore need_resched(). With
that fixed, it looks fine now.

Thanks !

Cheers,
Ben.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help