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 >: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. > -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