kern/124319: [snd_emu10k1] Regression: Cannot record from second card when two cards are in system

Mark Kane mark at mkproductions.org
Thu Jun 5 18:20:02 UTC 2008


>Number:         124319
>Category:       kern
>Synopsis:       [snd_emu10k1] Regression: Cannot record from second card when two cards are in system
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 05 18:20:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Mark Kane
>Release:        FreeBSD 7.0-STABLE amd64
>Organization:
MKProductions 
>Environment:


System: FreeBSD 7.0-STABLE #22: Fri May 30 03:54:46 CDT 2008 mixx941 at amd64.localhost:/usr/obj/usr/src/sys/AMD643000  amd64



>Description:


Hi.

With two sound cards in a machine that both use the snd_emu10k1 driver, sound cannot be recorded from the second card. The first snd_emu10k1 card (pcm1/dsp1 in my case) seems to record properly, but this message can occur when a recording attempt is made from the second card (pcm2/dsp2 for me) and no sound ever gets recorded:

kernel: pcm2:record:dsp2.r0: record interrupt timeout, channel dead

This might be somewhat similar to kern/119759, however the workaround I posted there of disabling recording vchans does not help with multiple cards like it did on the single card system I was working with before. I did try disabling recording vchans on all of the sound devices in the system however that did not have any effect either.

Recording with two snd_emu10k1 cards does work properly in FreeBSD 6. I'm not sure exactly where/when the problem was introduced, but I tried the same two cards on this system and recording to both simultaneously worked well:

FreeBSD 6.1-RELEASE #7: Thu May 18 15:43:13 CDT 2006

FreeBSD 7 seems to work better in general for me with the realtime audio application I'm trying to run on this machine, so if possible it would be great to be able to continue using 7 while using multiple snd_emu10k1 cards at once.

Thanks very much in advance.

-Mark


>How-To-Repeat:


Here is what happens on a simple test recording from the second snd_emu10k1 card without any third party applications:

% cat /dev/dsp2 > test.raw
% cat: /dev/dsp2: Invalid argument

kernel: pcm2:record:dsp2.r0: record interrupt timeout, channel dead

The same command works properly on the first card without the "Invalid argument" or "channel dead" errors, as well as in another 7.0-STABLE system with only one card using the emu10k1 driver (with rec vchans disabled).


>Fix:





>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list