exclusive sleep mutex pcm0 (sound cdev) r = 0
Don Lewis
truckman at FreeBSD.org
Tue Feb 24 07:52:32 PST 2004
On 24 Feb, John Baldwin wrote:
> On Tuesday 24 February 2004 10:27 am, Don Lewis wrote:
>> I currently have some patches for the channel mutexes that are
>> undergoing testing. Once these have been committed, I'll take another
>> look at the "sound cdev" mutex. My current thought is to convert most
>> uses of it to a lockmgr lock.
>
> Eek, why not a sx lock if you must go to a sleepable lock?
That was my initial thought, but I was scared off by the following
statement in the sx(9) man page:
A thread may not own a shared lock and an exclusive lock simultaneously;
attempting to do so will result in deadlock.
My plan is to hold this lock across large portions of the open() and
ioctl() methods (and possibly read() and write() as well). Some of
these may call code outside of my direct control, such as methods in the
hardware specific drivers, as well as things like malloc(). I'm
concerned about causing a deadlock by violating the sx usage rules.
More information about the freebsd-current
mailing list