:>:This is due to the sx worker locks not using MTX_NOWITNESS with the pool
:>:mutex
:>:changes.  It's not a problem though.
:>:
:>:-- 
:>:
:>:John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
:> 
:>     Would it make sense for me to add a new MTX flag that disables certain 
:>     non-applicable warnings?
:
:Err, that's what MTX_NOWITNESS sort of does.  This one is a bit hard, as you
:need a way to tell witness to ignore the lock orders between the reader writer
:locks and the smaller locks used in implementing those locks.  Using
:MTX_NOWITNESS on the sx worker locks worked great for this.  If the sx locks
:had their own pool of MTX_NOWITNESS locks that would work fine.  They could
:share this pool with the lockmgr worker locks as well.  They shouldn't be used
:for anything else, however.  This is why I wanted to allow for multiple pools.
:
:-- 
:
:John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/

    I'm not against the concept of multiple pools, but I'm not really
    for it either.  The various mutexes are already far too complex
    for their own good... look at SX locks, for example.  The
    struct sx is about 8 times as big as it needs to be to implement
    reasonable functionality.  I would scrap the upgrade and 
    downgrade API and I would scrap the condition variables
    and go with a simple shared/exclusive counter.

                                        -Matt
                                        Matthew Dillon 
                                        <[EMAIL PROTECTED]>

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to