Date: Sun, 25 Apr 2010 23:40:05 GMT From: Garrett Cooper <gcooper@FreeBSD.org> To: freebsd-multimedia@FreeBSD.org Subject: Re: kern/146031: [snd_hda] race condition when kldunload snd_hda sound called Message-ID: <201004252340.o3PNe5D8070578@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/146031; it has been noted by GNATS. From: Garrett Cooper <gcooper@FreeBSD.org> To: Garrett Cooper <gcooper@freebsd.org> Cc: Alexander Best <alexbestms@wwu.de>, bug-followup@freebsd.org Subject: Re: kern/146031: [snd_hda] race condition when kldunload snd_hda sound called Date: Sun, 25 Apr 2010 16:34:53 -0700 Sorry... forgot to answer the questions. On Sun, Apr 25, 2010 at 4:31 PM, Garrett Cooper <gcooper@freebsd.org> wrote: > On Sun, Apr 25, 2010 at 4:26 AM, Alexander Best <alexbestms@wwu.de> wrote: >> running >> >> sh -c 'i=1; while [ 1 ] ; do echo "Try $i"; kldload snd_hda; kldunload snd_hda >> sound; : $(( i += 1 )); done' >> >> complains about sound.ko not being loaded, since unloading snd_hda.ko also >> unloads sound.ko. is this what you got too? Yes, because it's kldunload(2) unloads all dependent modules for snd_hda.ko not in use (in this case sound.ko). >> i'm not sure this logic is correct. loading snd_hda.ko also loads sound.ko, >> since it depends on it. however i don't see why unloading snd_hda.ko also >> unloads sound.ko, since sound.ko has no dependencies and can exist without any >> snd_*.ko module. The point was that there's a race condition if the time between both snd_hda.ko and sound.ko was done, s.t. not all of the pieces were cleaned up and/or communicated in the kernel. >> i wasn't able to trigger the panic however (command cancelled with i=350 or >> so). >> >> i'm running 9-CURRENT (r207154). Ok. This might have been fixed in a later revision that hasn't been MFCed from HEAD, but I really don't want to have to take down my server to test this... Thanks, -Garrett
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201004252340.o3PNe5D8070578>