Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: mfi(4) fixes from OpenBSD....



At Tue, 31 Jan 2012 14:16:49 +0100, Manuel Bouyer 
<bouyer%antioche.eu.org@localhost> wrote:
Subject: Re: ongoing major problems with NetBSD-5 and LOCKDEBUG on multi-core 
system (mfi(4) related?)
> 
> On Sun, Jan 22, 2012 at 03:34:48PM -0800, Greg A. Woods wrote:
> > Thanks, I finally got around to re-adding the KERNEL_LOCK() hooks
> > to mfi.c, but I did it quite differently than the original two
> > patches which did it, and instead I moved the splbio()/splx() calls into
> > the function where they're really needed, as was done in OpenBSD, since
> > that code can, I think, be called by other than bio(4) and
> > sysmon_envstat(9).  I'll attach my current changes, which include the
> > missing bug fixes from OpenBSD, as well as my changes to splbio()/splx()
> 
> You're now mixing splbio/splx with mutexes, I don't think this is correct.

Hmmm.....

I see that spl(9) says that soft interrupts at or below IPL_SOFTSERIAL
"may acquire adaptive mutexes".  That would include IPL_SOFTBIO, but not
IPL_BIO (which is generally equivalent to IPL_VM).

I don't quite understand the issue though because on the other hand
mutex(9) says that spin mutexes can be acquired at IPL_VM or even
higher (right up to IPL_HIGH).

If I understand correctly all spl(9) use should be migrated to use
mutex(9), but in the mean time a slow migration should be fine while
both are in use, at least for separate purposes, I think.

-- 
                                                Greg A. Woods
                                                Planix, Inc.

<woods%planix.com@localhost>       +1 250 762-7675        http://www.planix.com/

Attachment: pgpCE29J9G5K1.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index