Re: exclusive sleep mutex pcm0 (sound cdev) r = 0

From: Don Lewis <truckman_at_FreeBSD.org>
Date: Tue, 24 Feb 2004 07:52:11 -0800 (PST)
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.
Received on Tue Feb 24 2004 - 06:52:32 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:44 UTC