Subject: Re: nesting simple_lock and spl*?
To: Jason R Thorpe <firstname.lastname@example.org>
From: Darren Reed <email@example.com>
Date: 05/26/2002 12:12:12
In some email I received from Jason R Thorpe, sie wrote:
> On Sat, May 25, 2002 at 08:59:20PM +0100, David Laight wrote:
> > I found some problems with the 'solaris' semantics of saving the spl
> > level within the mutex, the 'SVR4' semantics where the spl level
> > is returned to the user are more flexible.
> Some say "flexible", others say "error-prone".
> > pl1 = read_lock( table_lock )
> > entry = search_table( key );
> > pl2 = lock( entry->lock );
> > unlock( table_lock, pl2 );
> > .....
> > unlock( entry->lock, pl1 );
> You can already do this with Solaris-style mutexes if they are adaptive
> mutexes. Interrupt-blocking mutexes are meant to not be used that often
> in the Solaris kernel (and I happen to agree with their approach).
It'd be very cool if we could have adaptive mutexes in NetBSD.