duplicate read/write locks in net/pfil.c and netinet/ip_fw2.c

Luigi Rizzo rizzo at icir.org
Thu Aug 18 14:31:25 GMT 2005


On Thu, Aug 18, 2005 at 10:18:33AM -0400, Stephan Uphoff wrote:
> On Thu, 2005-08-18 at 03:57, Luigi Rizzo wrote:
...
> > In fact i don't understand why you consider spinning and sleeping
> > on a mutex two different things.
> 
> The major difference between sleeping (cv_wait,msleep,..) and blocking
> on a mutex is priority inheritance.
> If you need to be able to use (non-spin) mutexes while holding a
> [R|W]LOCK and use a [R|W]LOCK while holding a (non-spin) mutex then you
> need to implement priority inheritance for [R|W]LOCKs.

is that required (in FreeBSD, i mean) for algorithmic
correctness or just for performance ?

	cheers
	luigi


More information about the freebsd-arch mailing list