Bug 119630

Summary: No sound in games (game crashes)
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Dominik Lindner <suse>
Component: SoundAssignee: Takashi Iwai <tiwai>
Status: RESOLVED WONTFIX QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: RC 1   
Target Milestone: ---   
Hardware: x86-64   
OS: SUSE Other   
Whiteboard:
Found By: Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Dominik Lindner 2005-09-30 11:36:50 UTC
I tested some games on Suse 10.0 RC1, and there occur some strange sound (card)
problems, which did not occur in Suse 9.3.

Game 1, Neverball:
dominik@natrix:~> neverball
SNDCTL_DSP_SETFRAGMENT: Invalid argument
Warning: Couldn't set audio fragment size
Audio write: Invalid argument

Game 2, Unreal Tournament 2004:
dominik@natrix:~> ut2004
ioctl SETFRAGMENT grab: Invalid argument
ut2004-bin: al_mixer.c:735: _alSetMixer: Assertion `mixbuf.data' failed.
Signal: SIGIOT [iot trap]
Aborting.

The UT2004.log says:
Developer Backtrace:
Log: [ 1]  ./ut2004-bin [0xac202d]
Log: [ 2]  /lib64/tls/libpthread.so.0 [0x2aaaaacd22c0]
Log: [ 3]  /lib64/tls/libc.so.6(gsignal+0x3a) [0x2aaaab3a43ea]
Log: [ 4]  /lib64/tls/libc.so.6(abort+0x100) [0x2aaaab3a5820]
Log: [ 5]  /lib64/tls/libc.so.6(__assert_fail+0x10b) [0x2aaaab39da9b]
Log: [ 6]  ./openal.so [0x2aaaaf237081]
Log: [ 7]  ./openal.so [0x2aaaaf25c373]
Log: [ 8]  ./openal.so(alcMakeContextCurrent+0x87) [0x2aaaaf25b1c7]
Log: [ 9]  ./ut2004-bin(_ZN17UALAudioSubsystem4InitEv+0x22b) [0xcd7bcb]
Log: [10]  ./ut2004-bin(_ZN7UEngine9InitAudioEv+0xd5) [0x6387c5]
Log: [11]  ./ut2004-bin(_ZN11UGameEngine4InitEv+0xe2f) [0x6520ef]
Log: [12]  ./ut2004-bin [0x510674]
Log: [13]  ./ut2004-bin(main+0x29a5) [0x50bfa5]
Log: [14]  /lib64/tls/libc.so.6(__libc_start_main+0xda) [0x2aaaab39255a]
Log: [15]  ./ut2004-bin(strcat+0xb2) [0x50942a]
Log: Unreal Call Stack: alcMakeContextCurrent <- UALAudioSubsystem::Init <-
UEngine::InitAudio <- UGameEngine::Init <- InitEngine
Exit: Exiting.


And there is another strange thing: If I made some changes in the KDE Control
Center -> Sound System, and I want to apply them, there's a popup "Starting
Soundserver" and nothing more happens, the popup does not disappear any more, I
have to cancel it. And if I click on "Test Sound" in the control center, an
error occurs: The Soundserver (artsd) crashes with signal 11:
Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(no debugging symbols found)
...
[Thread debugging using libthread_db enabled]
[New Thread 46912533913440 (LWP 9406)]
(no debugging symbols found)
...
[KCrash handler]
#3  0x00002aaaaad99444 in Arts::PlayObject_base::_create ()
   from /opt/kde3/lib64/libkmedia2_idl.so.1
#4  0x0000000000412510 in ?? ()
#5  0x000000000040e45b in ?? ()
#6  0x00002aaaaac1bc2e in Arts::ByteSoundReceiver::_Creator ()
   from /opt/kde3/lib64/libsoundserver_idl.so.1
#7  0x00002aaaab9ef2c6 in Arts::Dispatcher::handle ()
   from /opt/kde3/lib64/libmcop.so.1
#8  0x00002aaaab9eff1f in Arts::Connection::receive ()
   from /opt/kde3/lib64/libmcop.so.1
#9  0x00002aaaab9f00a8 in Arts::Connection::receive ()
   from /opt/kde3/lib64/libmcop.so.1
#10 0x00002aaaab9d6470 in Arts::StdIOManager::processOneEvent ()
   from /opt/kde3/lib64/libmcop.so.1
#11 0x00002aaaab9d0e06 in Arts::StdIOManager::run ()
   from /opt/kde3/lib64/libmcop.so.1
#12 0x00000000004149ad in ?? ()
#13 0x00002aaaacca555a in __libc_start_main () from /lib64/tls/libc.so.6
#14 0x000000000040cdba in ?? ()
#15 0x00007ffffffd43b8 in ?? ()
#16 0x00002aaaaabc19c0 in rtld_errno () from /lib64/ld-linux-x86-64.so.2
#17 0x000000000000000e in ?? ()
...

Unfortunately I can't isolate the error. Is it an arts/alsa bug, kernel, or
sound driver, I don't know.

My hardware:
AMD64, Soundchip (onBoard): VIA VT8237 (Driver: snd-via82xx)
Comment 1 Takashi Iwai 2005-10-04 09:49:09 UTC
First, don't use arts.  It's obsolete.

On VIA8237, you can play up to 4 streams at the same time.  But, it might be a
bug of knotify that grabs the all sound devices.  Check "fuser
/dev/snd/pcmC0D?p" to see which process openes the ALSA PCM devices.  Check also
"fuser /dev/dsp", too.

Basically, there is no big change regarding OSS emulation.  So, I'm wondering
why UT doesn't work now.  For the precise analysis, you can try strace.  Or, you
may run with aoss wrapper to emulate OSS on user-space.

The segfault of arts might have been fixed.  Try to update later after the final
version is released (or try 10.1 alpha).

Anyway, remember that 3rd party programs are not the target of support :)
Comment 2 Matej Horvath 2007-02-16 14:11:02 UTC
No reaction on this bug for a long time. Closing as CANTFIX.