Garrett Cooper
2010-Jul-11 21:33 UTC
More buzzing fun with snd_emu10kx - but now with more determinism!
Getting back to the thread I brought up before (with my now dead email address): http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2010-06/msg00036.html , I now have a more deterministic testcase for this issue. The problem appears to be with vchan-related code. If I start up 4+ applications on my machine that access the audio device, all goes wonky on the 4+ allocation (I was stress testing the nvidia driver to see whether or not it'd break with multiple instances of vlc, and stumbled on this by accident). So pushing the number of consumers of the audio subsystem forces a breakdown somewhere (even though the number of available hardware vchans is set to 16). I'll continue to look into this further as time permits. Thanks, -Garrett
Andrew J. Caines
2010-Jul-12 03:20 UTC
More buzzing fun with snd_emu10kx - but now with more determinism!
On 07/11/2010 17:03, Garrett Cooper wrote:> The problem appears to be with vchan-related code. If I start up 4+ > applications on my machine that access the audio device, all goes > wonky on the 4+ allocationI can confirm this behaviour, which seems odd with hw.snd.maxautovchans defaulting to 16. It does not appear to be affected by increasing dev.pcm.0.play.vchans up fron the default of 2 (as I apparently did at some point up to 7.x), though reading sound(4) it's clear I don't fully understand vchans. A problem I encountered with snd_emu10kx in a clean 8.1RC2 install which was not present in any previous version is a faint rapid mechanical clicking sound adjustable with the "cd" mixer setting. The only non-default audio setting I have is in loader.conf: hint.emu10kx.0.multichannel_disabled="1" hint.emu10kx.1.disabled="1" pcm0: <EMU10Kx DSP front PCM interface> on emu10kx0 pcm0: <TriTech TR28602 AC97 Codec (id = 0x54524123)> pcm0: Codec features 5 bit master volume, no 3D Stereo Enhancement FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386) Installed devices: pcm0: <EMU10Kx DSP front PCM interface> on emu10kx0 (4p:2v/1r:1v) default snddev flags=0x2e2<AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC> [pcm0:play:dsp0.p0]: spd 48000, fmt 0x00200010, flags 0x00002100, 0x00000004 interrupts 726, underruns 0, feed 5, ready 0 [b:4096/2048/2|bs:4096/2048/2] channel flags=0x2100<BUSY,HAS_VCHAN> ... -- -Andrew J. Caines- Unix Systems Engineer A.J.Caines@halplant.com FreeBSD/Linux/Solaris, Web/Mail/Proxy/... http://halplant.com:2001/ "Machines take me by surprise with great frequency" - Alan Turing