tech-kern archive

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

Re: ongoing major problems with NetBSD-5 and LOCKDEBUG on multi-core system (mfi(4) related?)



On Wed, Jan 18, 2012 at 08:59:47PM -0800, Greg A. Woods wrote:
> 
> So if I understand correctly these calls from other subsystems are not
> in an interrupt context and if I remember correctly tsleep() should be
> fine in any normal driver ioctl() function (for a non-MPSAFE driver, if
> indeed its ioctl() function was in the device switch table), but clearly
> grabbing the KERNEL_LOCK() is the wrong thing to do for this case, at
> least without releasing it properly before the tsleep() call.

I don't know whether you can, or can't, sleep holding the KERNEL_LOCK().
It is a strange beast -- it's a counted lock unlike any of our standard
locking primitives (though it's implemented using them).  I am carboning
tech-kern, where hopefully someone can answer.

Thor


Home | Main Index | Thread Index | Old Index