PDA

View Full Version : Linux client crash on some servers


Gendeck
16th May, 2010, 09:58 AM
Hi all. Im linux user and have a problem. When i try to connect to tammy servers ut crash always. I have to run ut with "padsp ut" and UT.ini settings I have "AudioDevice = Audio.GenericAudioSubsystem". With this configuration have sound in game and ts, no lag sound and all works perfect, but ut crash. I have tested in other servers and it works. Basicaly the error is:

[MikModMusic] Changing songs: data at 0x7c3c008, 1992563 bytes. 1000ms fade.
[MikModMusic] Song is different to currently playing, if any. Sending signal to music thread.
FactoryCreateText: TextBuffer with TextBufferFactory (0 1 NPLoaderLL_v15e.u)
Execing NPLoaderLL_v15e.u
FactoryCreateText: TextBuffer with TextBufferFactory (0 1 NPLoaderLL_v15e.so)
Execing NPLoaderLL_v15e.so
Bound to NPLoaderLL_v15e.so
[NPLoaderv15e] [File] NPLoaderLL_v15e.so [Installed] Yes [Loaded] Yes
[NPLoaderv15e] [File] ACEv07f_C.dll [Status] is incompatible with your OS.
Disabling: ACEv07f_C.dll
Disabling Native Object: ACENative
Disabled 20 child functions
[NPLoaderv15e] [File] ACEv07f_C.dll [Installed] No [Loaded] No
[NPLoaderv15e] Loading complete
appError called:
Unsupported rate: 8000
Executing UObject::StaticShutdownAfterError
Executing USDLClient::ShutdownAfterError
UGenericAudioSubsystem::ShutdownAfterError
[MikModMusic] Music shutdown.
[MikModMusic] Music termination requested.
[MikModMusic] Waiting for music thread to finish.
[MikModMusic] Music thread done. Have a nice day.
Executing USDLViewport::ShutdownAfterError
USDLGLRenderDevice::ShutdownAfterError
Signal: SIGSEGV [segmentation fault]
Aborting.
Exiting.
Name subsystem shut down



I hope u find a solution to fix it.
Thx

AnthraX
16th May, 2010, 05:08 PM
Could you backtrace this error? (open ut-bin in gdb, run it, wait for the SIGSEGV then use the bt command in gdb)

strace output would also be useful.

Gendeck
16th May, 2010, 08:58 PM
XT_swap_control
[Nuevo Thread 0x64eab70 (LWP 2929)]
[Thread 0x64eab70 (LWP 2929) terminado]
[Thread 0x537bb70 (LWP 2922) terminado]

Program received signal SIGPIPE, Broken pipe.
[Cambiando a Thread 0x4b7ab70 (LWP 2921)]
0x0012d422 in __kernel_vsyscall ()
(gdb) bt
#0 0x0012d422 in __kernel_vsyscall ()
#1 0x0016bedb in write () from /lib/tls/i686/cmov/libpthread.so.0
#2 0x042a7e89 in ?? () from ./Audio.so
#3 0x042a8048 in ?? () from ./Audio.so
#4 0x0016496e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#5 0x006d3a0e in clone () from /lib/tls/i686/cmov/libc.so.6
(gdb)

AnthraX
16th May, 2010, 09:31 PM
Heh well, this doesn't really seem to be related to NPLoader... Have you checked if the error is always the same? Also, could you try to strace -o utlog -ff ./ut-bin -log and upload the output? Seems more like a corrupted .umx file to me.

Gendeck
16th May, 2010, 11:17 PM
I going to send u the log by email. 11 MB :eek:

Gendeck
17th May, 2010, 11:06 AM
Try here.. Finally i upload the file to megaupload

http://www.megaupload.com/?d=VBTGP0T3

Only crash on tammy servers. Sometime crash when loading map screen, and sometime when i can see the map while validating utpure, but always on tammy servers.. In other servers no have problems to play

Gendeck
17th May, 2010, 01:56 PM
There is an error. In post #3 i use gdb directly fron ut-bin and i need to run ut from my script (padsp ut). I run UT and i attach id under gdb. Shows:
Leyendo s�*mbolos desde /bin/bash...(no se encontraron s�*mbolos de depuración)hecho.
Leyendo s�*mbolos desde /lib/libncurses.so.5...(no se encontraron s�*mbolos de depuración)hecho.
S�*mbolos cargados para /lib/libncurses.so.5
Leyendo s�*mbolos desde /lib/tls/i686/cmov/libdl.so.2...(no se encontraron s�*mbolos de depuración)hecho.
S�*mbolos cargados para /lib/tls/i686/cmov/libdl.so.2
Leyendo s�*mbolos desde /lib/tls/i686/cmov/libc.so.6...(no se encontraron s�*mbolos de depuración)hecho.
S�*mbolos cargados para /lib/tls/i686/cmov/libc.so.6
Leyendo s�*mbolos desde /lib/ld-linux.so.2...(no se encontraron s�*mbolos de depuración)hecho.
S�*mbolos cargados para /lib/ld-linux.so.2
0x00115422 in __kernel_vsyscall ()


Now i try to connect to Tammy server #2 and crash ut and:

(gdb) s
Single stepping until exit from function __kernel_vsyscall,
which has no line number information.
0x002b47d3 in waitpid () from /lib/tls/i686/cmov/libc.so.6
(gdb) bt
#0 0x002b47d3 in waitpid () from /lib/tls/i686/cmov/libc.so.6
#1 0x08088762 in ?? ()
#2 0x080899fe in wait_for ()
#3 0x0807854a in execute_command_internal ()
#4 0x08078743 in execute_command ()
#5 0x08064c7f in reader_loop ()
#6 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function waitpid,
which has no line number information.
0x080899fe in wait_for ()
(gdb) bt
#0 0x080899fe in wait_for ()
#1 0x0807854a in execute_command_internal ()
#2 0x08078743 in execute_command ()
#3 0x08064c7f in reader_loop ()
#4 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function wait_for,
which has no line number information.
0x0807854a in execute_command_internal ()
(gdb) bt
#0 0x0807854a in execute_command_internal ()
#1 0x08078743 in execute_command ()
#2 0x08064c7f in reader_loop ()
#3 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function execute_command_internal,
which has no line number information.
0x08078743 in execute_command ()
(gdb) bt
#0 0x08078743 in execute_command ()
#1 0x08064c7f in reader_loop ()
#2 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function execute_command,
which has no line number information.
0x08064c7f in reader_loop ()
(gdb) bt
#0 0x08064c7f in reader_loop ()
#1 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function reader_loop,
which has no line number information.
0x080642f5 in main ()
(gdb) bt
#0 0x080642f5 in main ()
(gdb) s
Single stepping until exit from function main,
which has no line number information.

Program exited with code 01.


I've never used gdb before and I've only been doing it this way.

Gendeck
18th May, 2010, 06:57 PM
What do u think about this AnthraX. Can be fix?

AnthraX
18th May, 2010, 07:28 PM
The log you sent me was incomplete. There should also be a log for the audio thread (which is causing the crash). You might have to sudo that strace command.

~V~
18th May, 2010, 08:02 PM
Linux client is very sensitive to correct audio formats in packages. If a server has a voicepack or such with the wrong format it will just crash it.

There is an alternative sound driver that doesn't crash but the sound is very low quality.

Gendeck
18th May, 2010, 08:50 PM
Sended all logs (9)

AnthraX
18th May, 2010, 09:21 PM
Seems that it's crashing because one of the sounds in Botpack.u is recorded at a frequency of 8000Hz. The audio driver you're using only supports 11025, 22050 or 44100Hz. The reason why it only happens on those servers is probably that the tammy servers use sounds that are not used on the other servers you visit. The easiest solution would probably be to patch Audio.so to support other sampling frequencies. Can't help you with that at this moment though. I'll add it to my todo list.

Gendeck
18th May, 2010, 10:10 PM
Thx a lot AnthraX. I will wait it =)

~V~
18th May, 2010, 10:38 PM
The easiest solution would probably be to patch Audio.so to support other sampling frequencies. Can't help you with that at this moment though. I'll add it to my todo list.

That would be great - looking forward to it.

SoNY_scarface
18th May, 2010, 11:35 PM
I'll say thanks even though I don't have this problem. Really appreciate the time and effort you put into UT Anth ;)

rork
26th November, 2011, 09:52 AM
Huge kick but this problem started affecting me when I upgraded to Kubuntu 11.10 and I'm looking for a fix.

The problem is that the more recent Ubuntu versions don't support OSS (the old sounddriver UT uses) anymore and you don't have sound when you start it:
Bound to ALAudio.so
open /dev/dsp: No such file or directory
Audio initialization failed.
When using ALAudio.ALAudioSubsystem

Bound to Audio.so
Failed to open audio device.
Audio initialization failed.
When using Audio.GenericAudioSubsystem

This can be fixed by using padsp (http://linux.die.net/man/1/padsp) which redirects the output to PulseAudio, yet with the standard audiodriver (ALAudio.ALAudioSubsystem) the sound lags half a second. This then can be fixed by switching to the generic driver (Audio.GenericAudioSubsystem) by changing [Engine.Engine] AudioDevice in UnrealTournament.ini

# AudioDevice=ALAudio.ALAudioSubsystem
AudioDevice=Audio.GenericAudioSubsystem

Using the Generic audio driver however generates the bug described above on some maps/servers but at least you can play with good sound on some of them. Using AlAudio doesn't give this bug.

The solution would be to
1) Fix the lag with ALAudioSubsystem / padsp
2) Add support for additional rates in GenericAudioSubsytem
3) Renable oss

I know someone tried (3) but failed, I have no clue on where to start with (1) or (2) and don't know if there's any sources of ALAudio0.0 or Generic around and how the internals of these and the libraries work. Does anyone have some clues?