5.2-RELEASE panic in turnstile_wait

Don Lewis truckman at FreeBSD.org
Wed Jan 28 23:14:55 PST 2004


On 29 Jan, Erik Moe wrote:
> My loader.conf looks like this...
> 
> hw.pci.allow_unsupported_io_range="1"
> hw.ata.atapi_dma="1"
> 
> hw.snd.pcm0.vchans=4
> hw.snd.maxautovchans=4

There is a potential buffer overflow in the vchan code that can bzero()
unrelated objects in the kernel heap, like the mutex that you found, and
cause hard to track down system panics.  The buffer overflow can be
triggered by certain combinations of sound hardware and software.

The 5.2-RELEASE errata list contains the following note:

(9 Jan 2004) The use of multiple vchans (virtual audio channels with
dynamic mixing in software) in the pcm(4) driver has been known to cause
some instability.


I finally came up with a fix for this problem that worked and checked it
into the -CURRENT source within the last 24 hours.  I'd recommend either
disabling vchans or upgrading to -CURRENT, though you might be able to
retrofit the contents of src/sys/dev/sound/pcm/ and rebuild your kernel.



More information about the freebsd-current mailing list