Bug 131794 - ALSA emu10k1 driver - strange behaviour for OSS emulation
Summary: ALSA emu10k1 driver - strange behaviour for OSS emulation
Status: RESOLVED FIXED
: 127766 (view as bug list)
Alias: None
Product: SUSE LINUX 10.0
Classification: openSUSE
Component: Sound (show other bugs)
Version: Stable Snapshot 2
Hardware: i686 SuSE Linux 10.0
: P5 - None : Normal
Target Milestone: ---
Assignee: Jaroslav Kysela
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-01 16:42 UTC by Forgotten User iWJ8PVCHsF
Modified: 2006-02-26 20:37 UTC (History)
2 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Forgotten User iWJ8PVCHsF 2005-11-01 16:42:44 UTC
It seems, there is some problem in sound subsystem.
Sound in some applications (especially games - for.ex. Tuxracer, TORCS, etc...) does not work. But sound in KDE applications (and KDE system sounds also) works OK.
There is following message on the console after application start (from command line):
SNDCTL_DSP_SETFRAGMENT: Invalid argument
Warning: Couldn't set audio fragment size
Audio write: Invalid argument

May be there is some problem in KDE sound daemon - reconfiguration attempts in the KDE Control Center ends in endless loop (periodicaly sound system restarts).

My sound card: Sound Blaster Live! (CT4832).
Comment 1 Jaroslav Kysela 2005-11-02 10:00:35 UTC
Could you give me strace output for one of the problematic application? 'strace -fe trace=ioctl,open <command>'
Comment 2 Forgotten User iWJ8PVCHsF 2005-11-02 20:03:24 UTC
(In reply to comment #1)
> Could you give me strace output for one of the problematic application? 'strace
> -fe trace=ioctl,open <command>'
> 

For example:
open("/etc/ld.so.cache", O_RDONLY)      = 3
open("/usr/lib/libSDL-1.2.so.0", O_RDONLY) = 3
open("/lib/tls/libpthread.so.0", O_RDONLY) = 3
open("/usr/lib/libSDL_image-1.2.so.0", O_RDONLY) = 3
open("/usr/lib/libSDL_mixer-1.2.so.0", O_RDONLY) = 3
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
open("/usr/lib/libstdc++.so.6", O_RDONLY) = 3
open("/lib/tls/libm.so.6", O_RDONLY)    = 3
open("/lib/libdl.so.2", O_RDONLY)       = 3
open("/usr/X11R6/lib/libX11.so.6", O_RDONLY) = 3
open("/usr/X11R6/lib/libXext.so.6", O_RDONLY) = 3
open("/usr/lib/libaa.so.1", O_RDONLY)   = 3
open("/usr/lib/libjpeg.so.62", O_RDONLY) = 3
open("/usr/lib/libpng.so.3", O_RDONLY)  = 3
open("/lib/libz.so.1", O_RDONLY)        = 3
open("/usr/lib/libvorbisfile.so.3", O_RDONLY) = 3
open("/usr/lib/libvorbis.so.0", O_RDONLY) = 3
open("/usr/lib/libogg.so.0", O_RDONLY)  = 3
open("/usr/lib/libmikmod.so.2", O_RDONLY) = 3
open("/lib/libgcc_s.so.1", O_RDONLY)    = 3
open("/usr/lib/libslang-utf8.so.1", O_RDONLY) = 3
open("/usr/lib/libgpm.so.1", O_RDONLY)  = 3
open("/lib/libncurses.so.5", O_RDONLY)  = 3
open("/home/mhejpetr/.circuslinux", O_RDONLY) = 3
open("/home/mhejpetr/.Xauthority", O_RDONLY) = 4
open("/home/mhejpetr/.Xauthority", O_RDONLY) = 4
open("/home/mhejpetr/.Xauthority", O_RDONLY) = 5
open("/etc/ld.so.cache", O_RDONLY)      = 5
open("/lib/tls/i686/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tls/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/i686/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/i686/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/i686/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/i686/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/i686/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/i686/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tm/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libXcursor.so.1.0.2", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 5
open("/lib/tls/libXcursor.so.1.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/i686/libXcursor.so.1.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/lib/libXcursor.so.1.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/tls/libXcursor.so.1.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/lib/libXcursor.so.1.0", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 5
open("/usr/X11R6/lib/libXcursor.so.1", O_RDONLY) = 5
open("/usr/X11R6/lib/libXrender.so.1", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/locale.alias", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/locale.dir", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/C/XI18N_OBJS", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/locale.alias", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/locale.dir", O_RDONLY) = 5
open("/usr/X11R6/lib/X11/locale/C/XLC_LOCALE", O_RDONLY) = 5
open("/home/mhejpetr/.Xdefaults-trantor", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/dev/dsp", O_WRONLY|O_NONBLOCK)   = 5
open("/dev/dsp", O_WRONLY|O_NONBLOCK)   = 5
ioctl(5, SNDCTL_DSP_GETFMTS, 0xbfe89c88) = 0
ioctl(5, SNDCTL_DSP_SETFMT or SOUND_PCM_READ_BITS, 0xbfe89c88) = 0
ioctl(5, SOUND_PCM_READ_CHANNELS, 0xbfe89c88) = 0
ioctl(5, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbfe89c88) = 0
ioctl(5, SNDCTL_DSP_SETFRAGMENT, 0xbfe89c84) = -1 EINVAL (Invalid argument)
SNDCTL_DSP_SETFRAGMENT: Invalid argument
Warning: Couldn't set audio fragment size
Process 6527 attached
[pid  6526] open("/etc/ld.so.cache", O_RDONLY) = 6
[pid  6526] open("/usr/lib/libesd.so", O_RDONLY) = 6
[pid  6526] open("/usr/lib/libaudiofile.so.0", O_RDONLY) = 6
[pid  6526] open("/usr/lib/libasound.so.2", O_RDONLY) = 6
[pid  6526] open("/lib/libresmgr.so.1", O_RDONLY) = 6
[pid  6526] open("/etc/esd.conf", O_RDONLY) = 6
[pid  6526] open("/home/mhejpetr/.esd.conf", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid  6526] open("/dev/dsp", O_WRONLY)  = -1 EBUSY (Device or resource busy)
[pid  6526] open("music.raw", O_RDWR|O_CREAT|O_TRUNC, 0600) = 6
[pid  6526] open("/etc/timidity.cfg", O_RDONLY) = 7
[pid  6526] open("/usr/share/timidity/timidity.cfg", O_RDONLY) = 8
[pid  6526] open("piano+guitar.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid  6526] open("/usr/share/timidity/piano+guitar.cfg", O_RDONLY) = 9
[pid  6526] open("drums.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid  6526] open("/usr/share/timidity/drums.cfg", O_RDONLY) = 9
[pid  6526] ioctl(3, FIONREAD, [0])     = 0
[pid  6526] ioctl(3, FIONREAD, [352])   = 0
[pid  6526] open("/usr/share/circuslinux/data/images/icon.png", O_RDONLY) = 7
[pid  6526] open("/usr/share/circuslinux/data/images/title/title.png", O_RDONLY) = 7
Audio write: Invalid argument
Process 6527 detached
open("/usr/share/circuslinux/data/images/title/title-highlights.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/title/light-on.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/title/light-off.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/title/programming.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/title/graphics.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/title/music.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/backgrounds/background0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/backgrounds/background1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/red-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/orange-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/yellow-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/green-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/cyan-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/blue-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/purple-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-die-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/balloons/white-die-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/body-left.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/body-right.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/body-upside-down.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-arm-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-arm-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-arm-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-arm-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-arm-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-arm-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-leg-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-leg-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-leg-0-upside-down.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/left-leg-1-upside-down.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-leg-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-leg-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-leg-0-upside-down.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/clowns/right-leg-1-upside-down.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/left-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/left-3.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/right-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/teeter-totter/right-3.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/bouncers/bouncer-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/bouncers/bouncer-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/bouncers/barrier.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/times.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/numbers-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/numbers-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/letters.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/fuzz.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/clown-head.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/clown-head-oh.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/sadclown-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/sadclown-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/sadclown-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/status/enter-initials.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/highscore/top.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/highscore/left.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/seal-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/seal-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/beachball-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/beachball-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/beachball-2.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/bear-right-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/bear-right-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/bear-left-0.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/images/acts/bear-left-1.png", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/pop.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/bounce.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/teeter1.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/teeter2.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/splat.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/applause.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/cheering.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/wahoo.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/sounds/keypress.wav", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/finally.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/finally.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/klovninarki.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/klovninarki.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/kaupunki.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/kaupunki.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/hiscore.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/hiscore.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/hiscreen.mod", O_RDONLY) = 7
open("/usr/share/circuslinux/data/music/hiscreen.mod", O_RDONLY) = 7
ioctl(3, FIONREAD, [64])                = 0
ioctl(3, FIONREAD, [96])                = 0
ioctl(3, FIONREAD, [96])                = 0
ioctl(3, FIONREAD, [32])                = 0
ioctl(3, FIONREAD, [96])                = 0
ioctl(3, FIONREAD, [32])                = 0
ioctl(3, FIONREAD, [96])                = 0
ioctl(3, FIONREAD, [64])                = 0
ioctl(3, FIONREAD, [64])                = 0
ioctl(3, FIONREAD, [32])                = 0
open("/home/mhejpetr/.circuslinux", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 7

Comment 3 Forgotten User iWJ8PVCHsF 2005-11-03 23:24:29 UTC
Hi,

I have tested Mplayer now. From my point of view (_I_am_not_ALSA_expert_) there is some bug in the Alsa OSS emulation ??
- Mplayer's sound works OK with the ALSA audio output driver
- Mplayer's sound does not work with the OSS audio output driver

Message on the console after Mplayer (with the OSS ao driver) startup from command line:
...
Checking audio filter chain for 48000Hz/2ch/s16le -> 48000Hz/2ch/s16le...
AF_pre: 48000Hz/2ch/s16le
[AO OSS] audio_setup: driver doesn't support SNDCTL_DSP_GETOSPACE :-(
[AO OSS]
   ***  Your audio driver DOES NOT support select()  ***
 Recompile MPlayer with #undef HAVE_AUDIO_SELECT in config.h !
...

Unfortunately there are many applicatons without native ALSA audio output (e.g. games, which are part of the  SuSE distro (!)) - OSS emulation is needed. Thank you for your help.
Comment 4 Jaroslav Kysela 2005-11-04 08:44:13 UTC
It seems that this problem is only related only to the ca0106 driver - there are strange contrains regarding the buffer sizes. I will try to reproduce the problem here.
Comment 5 Forgotten User iWJ8PVCHsF 2005-11-04 09:56:52 UTC
(In reply to comment #4)
> It seems that this problem is only related only to the ca0106 driver - there
> are strange contrains regarding the buffer sizes. I will try to reproduce the
> problem here.
> 

But my sound card is old Sound Blaster Live! (Model: "Creative CT4832 SBLive! Value"). No SB Audigy LS or SB Live! 24bit. I think, there is EMU10K1-driver used ??
Comment 6 Forgotten User iWJ8PVCHsF 2005-11-04 10:41:43 UTC
I found similar problem reported to Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=127766
Comment 7 Forgotten User iWJ8PVCHsF 2005-11-13 21:02:06 UTC
Any news on bug 131794 ?
Comment 8 Jaroslav Kysela 2005-11-18 10:09:28 UTC
Yes, you're right. The emu10k1 driver is used in your case. Unfortunately, I cannot reproduce the bug here.

Could you get the ALSA driver 1.0.10 from the ALSA's website and enable OSS emulation debugging in alsa-driver/alsa-kernel/core/oss/pcm_oss.c - look for disabled OSS_DEBUG #define?

Also, you have to install kernel-source rpm and follow the instruction for BUILDING ADDITIONAL (EXTERNAL) MODULES in README.SUSE file in /usr/src/linux-*/ directory to prepare kernel for the external driver compilation.

The steps for the driver compilation:

./configure --with-cards=emu10k1
make
cd utils
./insert emu10k1

To restore the original sound settings after tests, edit the /etc/modprobe.d/sound file (uncomment the alias line).
Comment 9 Jaroslav Kysela 2006-01-03 10:29:20 UTC
No response.
Comment 10 Jaroslav Kysela 2006-01-11 10:22:14 UTC
No response.
Comment 11 Forgotten User iWJ8PVCHsF 2006-01-19 21:00:37 UTC
I am sorry for my delayed response....
Now I have installed the alsa emu10k1 driver from 1.0.10 source code, there is the same problem as with driver from SUSE 10.0 binary packages.
But there is now interesting message in the system log (/var/log/messages) from sound subsystem initialization (lines with "unable to register..."). See below. Hopefully it can help you. 
...
Jan 19 20:35:33 trantor kernel: ALSA /root/tmp/alsa/alsa-driver-1.0.10/acore/oss/mixer_oss.c:1317: unable to register OSS mixer device 0:0
Jan 19 20:35:33 trantor kernel: snd_pcm_oss: module not supported by Novell, setting U taint flag.
Jan 19 20:35:33 trantor kernel: ALSA /root/tmp/alsa/alsa-driver-1.0.10/acore/oss/pcm_oss.c:2484: unable to register OSS PCM device 0:0
...
Comment 12 Egbert König 2006-02-26 20:29:52 UTC
WONTFIX is not acceptable for such a fundamental bug.
Comment 13 Egbert König 2006-02-26 20:35:19 UTC
The solution is to disable the open sound system in the kernel. In the SuSE default kernel configuration it is enabled as a loadable module. Remove

CONFIG_SOUND_OSS=m

from your kernel configuration (or use make xconfig or make menuconfig to do this). I have rebuild and installed the kernel. All applications like supertux, VMware etc. which are programmed for OSS are running now with sound.

Hopefully the SuSE team will change this option in their kernel, so that I will not have to rebuild the kernel after each kernel update (and other users too).
Comment 14 Egbert König 2006-02-26 20:37:46 UTC
*** Bug 127766 has been marked as a duplicate of this bug. ***