On 14-Nov-01 Matthew Dillon wrote:
>:On 14-Nov-01 David Wolfskill wrote:
>:> Built & booted today's -CURRENT; saw the following on the console & in
>:> /var/log/messages:
>:> Nov 14 08:59:25 localhost /boot/kernel/kernel: lock order reversal
>:> Nov 14 08:59:25 localhost /boot/kernel/kernel: 1st 0xc0427980 dev_pager
>:> create @ /usr/src/sys/vm/device_pager.c:143
>:> Nov 14 08:59:25 localhost /boot/kernel/kernel: 2nd 0xc03feca0 pool mutex @
>:> /usr/src/sys/kern/kern_sx.c:329
>:This is due to the sx worker locks not using MTX_NOWITNESS with the pool
>: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.

>                                       -Matt
>                                       Matthew Dillon 
>                                       <[EMAIL PROTECTED]>


John Baldwin <[EMAIL PROTECTED]>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

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

Reply via email to