Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Jul 2005 11:15:13 +0900
From:      Pyun YongHyeon <pyunyh@gmail.com>
To:        Jonathan Noack <noackjr@alumni.rice.edu>
Cc:        freebsd-multimedia@freebsd.org, mat@cnd.mcgill.ca, Ariff Abdullah <skywizard@MyBSD.org.my>
Subject:   Re: Massive sound changes / fix (24/32bit pcm support, new sampling rate converter, various fixes)
Message-ID:  <20050711021513.GA858@rndsoft.co.kr>
In-Reply-To: <42D0F4D4.10700@alumni.rice.edu>
References:  <42D02CA9.4080201@alumni.rice.edu> <20050710051523.0a67cd91.skywizard@MyBSD.org.my> <42D0F4D4.10700@alumni.rice.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Jul 10, 2005 at 05:13:40AM -0500, Jonathan Noack wrote:
[...]
 > 
 > I also see this LOR when detaching:
 > lock order reversal
 >  1st 0xc23a2cc0 pcm0 (sound cdev) @ 
 > /usr/src/sys/modules/sound/sound/../../../dev/sound/pcm/sound.c:706
 >  2nd 0xc0837760 sndstat (sndstat) @ 
 > /usr/src/sys/modules/sound/sound/../../../dev/sound/pcm/sndstat.c:256
 > KDB: stack backtrace:
 > witness_checkorder(c0837760,9,c08330a8,100,c050c874) at 
 > witness_checkorder+0x3af
 > _sx_xlock(c0837760,c08330a8,100,0,c234ca00) at _sx_xlock+0x5c
 > sndstat_unregister(c2376e00,c25f4700,c08331a6,2c2,c2376e00) at 
 > sndstat_unregister+0x27
 > pcm_unregister(c2376e00,c06f75b0,c2376e00,f9771be8,c2376e00) at 
 > pcm_unregister+0x112
 > es_pci_detach(c2376e00,c2333850,c06f75b0,961,c08439c0) at es_pci_detach+0x17
 > device_detach(c2376e00,c08425f0,c2320640,1,c22fb000) at device_detach+0x8f
 > devclass_delete_driver(c22fb000,c08439c0,0,0,c226edc0) at 
 > devclass_delete_driver+0xcb
 > driver_module_handler(c226edc0,1,c08439ac) at driver_module_handler+0xd9
 > module_unload(c226edc0,0,1fb,c2274d00,3) at module_unload+0x66
 > linker_file_unload(c2274d00,0,c06c4f26,327,bfbfe890) at 
 > linker_file_unload+0x276
 > kern_kldunload(0,f9771d04,8,421,2) at kern_kldunload+0x8d
 > syscall(3b,3b,3b,3,bfbfedf6) at syscall+0x13b
 > Xint0x80_syscall() at Xint0x80_syscall+0x1f
 > --- syscall (444, FreeBSD ELF32, kldunloadf), eip = 0x280c0e63, esp = 
 > 0xbfbfe88c, ebp = 0xbfbfecf8 ---
 > 

AFAIK this is not real LOR(WITNESS was confused). As you know it's not
legal to grab sx lock while holding a mutex. I think almost all MPSAFE
audio drivers suffer from the same issue. So I guess it's ok to ignore
the issue for a while.
The LOR message would be the result of truckman's commit(rev. 1.18
sndstat.c). He already knows the issue but I don't know current status
of the fix.

-- 
Regards,
Pyun YongHyeon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050711021513.GA858>