[parisc-linux] User space locks -- what's wrong

Michael S. Zick mszick at morethan.org
Sat Jun 10 11:41:13 MDT 2006


On Wed June 7 2006 07:25, Michael S. Zick wrote:
> On Tue June 6 2006 23:09, John David Anglin wrote:
> > 
> > 
> > I've looked at the locking in hpux a bit.  As far as I can tell,
> > the kernel never really spins.  It has code to do pre-arbitration
> > and keeps track of tasks and priorities.  When a lock is released,
> > the code calls into suwaiters to see if the lock should be handed
> > over to another task or released.  When we just spin, we are relying
> > on the bus arbitration to select a winner.  So, when we have a
> > highly contended lock, it might be  possible for a cpu to get locked
> > out for sufficient time to cause a softlockup.
> > 
> 
> I never went back to correct the state tables in the document I worked
> up to match the most recent code snippets...
> 
> I will fix that and then post a link on this list.
> 

Document is now updated.  Intended to be a continuation of Dave's one
spinlock per cache-line experimental patch.

See:
http://www.morethan.org/parisc/pa-spinlocks.html
http://www.morethan.org/parisc/pa-spinlocks.pdf

>
> Right or wrong - that document gives us the ground work for lock passing
> and lock failure recovery without ever having seen HPUX.
>

Document does not yet have pa-risc examples of lock passing and lock failure
recovery - you need to consult the references made for those at this point.
 
> 
> > Dave
> 
> Mike

Mike



More information about the parisc-linux mailing list