Client crash

Added by kirlack about 8 years ago

Hi,

Testing the native GNU/Linux client, I noticed a lot of crashes. It started with crashes when entering into guild hall and apartments, then it was more and more often. Now, it crashes the next 30s after entering the game. What the hell append ? Here is 3 error log.

my.1.log - error log 1 (10.1 kB)

my.2.log - error log 2 (8.9 kB)

my.3.log - error log 3 (7.6 kB)


Replies (18)

RE: Client crash - Added by Letto_FR about 8 years ago

Same problem here, the client crashes just a few seconds after entering the game.

RE: Client crash - Added by kervala about 8 years ago

It seems like this problem is related to your SMP kernel.

No developer is using one so we never encountered your problems.

RE: Client crash - Added by kervala about 8 years ago

Sorry, I didn't noticed allmost all recent kernels are using SMP.

It should be something else.

RE: Client crash - Added by kirlack about 8 years ago

New crash logs !

log 5 : Crash when entering an apartment (Yrkanis).
log 6 : Re-spawn in from of the building, crash when trying to enter the apartment a second time.
log 7 : Re-spawn inside the apartment, crash a few seconds after spawn.

log 8 : Crash when entering a guild hall.
log 9 : Re-spawn inside the gh (Yrkanis), crash a few seconds after spawn.
log 10, 11, 12 : Re-spawn in the desert (south est vortex), crash a few seconds after spawn. I don't know why I spawned in the desert after a crash in Yrkanis, but I already saw this a long time ago with the windows client.

log 13 : After a crash without log when entering a gh, I re-spawned inside the gh ans crashes a few seconds after the spawn.

I noticed that after a crash, the "game configuration" windows is open even if it was closed before the crash. Also, in order to stop the endless crashes (logs 1, 2, 3, 10, 11, 12) I need to start the windows client and move the character.

my.10.log - error log 10 (10.4 kB)

my.11.log - error log 11 (10.4 kB)

my.12.log - error log 12 (10.4 kB)

my.13.log - error log 13 (8.7 kB)

my.5.log - error log 5 (7.4 kB)

my.6.log - error log 6 (7.7 kB)

my.7.log - error log 7 (8.7 kB)

my.8.log - error log 8 (7.7 kB)

my.9.log - error log 9 (8.8 kB)

RE: Client crash - Added by kervala about 8 years ago

Thanks for reporting this bug and providing logs.

This bug could be related to your system and it happens when previous time is more than current one (which should be not possible).

I located 4 parts where your assert could be triggered, 3 of them are related to Ryzom Ring and the last one is called when weather is changing.

RE: Client crash - Added by kervala about 8 years ago

I found this comment in code for NLMISC::getPerformanceTime() :

     * \warning On a multiprocessor system, the value returned by each processor may
     * be different. The only way to workaround this is to set a processor affinity
     * to the measured thread.

Did you change something with affinity ?

If not, that's really strange most of other players don't have this problem.

RE: Client crash - Added by kirlack about 8 years ago

kervala wrote:

Did you change something with affinity ?

If not, that's really strange most of other players don't have this problem.

Before your post I didn't knew what the processor affinity is, so I haven't changed anything.

RE: Client crash - Added by kervala about 8 years ago

Please could you make these tests ?

  • Install schedutils :
apt-get install schedutils
  • Launch Ryzom static client
  • Get Ryzom client affinity :
taskset -p `pidof -s ryzom_client`
  • Set Ryzom client affinity to first core :
taskset -p 1 `pidof -s ryzom_client`

RE: Client crash - Added by kirlack about 8 years ago

tycho@uraniborg-> taskset -p `pidof -s ryzom_client`
pid 8750's current affinity mask: 3
tycho@uraniborg-> taskset -p 1 `pidof -s ryzom_client`
pid 8750's current affinity mask: 3
pid 8750's new affinity mask: 1

Thx. For the moment I haven't noticed any crash, if one happens I'll post the log.

RE: Client crash - Added by kervala about 8 years ago

Ah thanks, that's a great (and good) news :)

Under Windows, Ryzom client is forced to use only 1 core, but under Linux, it's not implemented so it uses 2 cores in your case :(

The fact it's using 2 cores can create bad values when getting current time, because 2 tasks can be run in parallel.

RE: Client crash - Added by Letto_FR about 8 years ago

Fantastic, it worked for me too :)
Thanks a lot

RE: Client crash - Added by kervala about 8 years ago

Thanks, we just need to implement this in NeL and it will fix the problem :)

RE: Client crash - Added by kirlack about 8 years ago

Hum, now that this crash is solved, I have an other one to submit :p

It happens at the end of a teleportation (using a pact or when entering an apartment, guild hall, etc), the client freeze. When trying to quit using Alt + F4, the display is killed but the client still exist, i need to manually kill the process. There is no output log, but the error logs are spammed with the following error (the freeze seems to be an infinite loop) :

2010/08/13 22:55:40 WRN 2206202736 <Unknown> music_buffer_vorbis.cpp 153 getNextBytes : ov_read: -137

Just to imagine how the log are flooded (before starting the game I every log file was empty) :

tycho@uraniborg-> cat client.log | grep music_buffer_vorbis | wc -l
17995
tycho@uraniborg-> cat client000.log | grep music_buffer_vorbis | wc -l
46057
tycho@uraniborg-> cat client001.log | grep music_buffer_vorbis | wc -l
51401
tycho@uraniborg-> cat client002.log | grep music_buffer_vorbis | wc -l
51401
tycho@uraniborg-> cat client003.log | grep music_buffer_vorbis | wc -l
51401
tycho@uraniborg-> cat log.log | grep music_buffer_vorbis | wc -l
17997
tycho@uraniborg-> cat log000.log | grep music_buffer_vorbis | wc -l
46056
tycho@uraniborg-> cat log001.log | grep music_buffer_vorbis | wc -l
51401
tycho@uraniborg-> cat log002.log | grep music_buffer_vorbis | wc -l
51401
tycho@uraniborg-> cat log003.log | grep music_buffer_vorbis | wc -l
51401

RE: Client crash - Added by kirlack about 8 years ago

And an other crash while walking in Yrkanis (the client quit immediately just like the crash due to the processor affinity). Here is the log.log :

tycho@uraniborg-> tail -n 60 log.log
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 impulse_decoder.cpp 92 : CLIMPD: at level 2 (channel 0), 1 actions (ReceivedAck=9556/lastAck=9553/nextSentPacket=9557)
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 cdb_synchronised.cpp 180 : Update DB
2010/08/14 08:50:20 <Unknown> INF b5b3d6f0 impulse_decoder.cpp 82 : CLIMPD: received new impulsion 1 (len=131) at level 2 (channel 2)
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 impulse_decoder.cpp 92 : CLIMPD: at level 2 (channel 2), 1 actions (ReceivedAck=9558/lastAck=9555/nextSentPacket=9559)
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 cdb_synchronised.cpp 180 : Update DB
2010/08/14 08:50:20 <Unknown> INF b5b3d6f0 impulse_decoder.cpp 82 : CLIMPD: received new impulsion 1 (len=131) at level 2 (channel 0)
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 impulse_decoder.cpp 92 : CLIMPD: at level 2 (channel 0), 1 actions (ReceivedAck=9560/lastAck=9557/nextSentPacket=9561)
2010/08/14 08:50:20 <Unknown> DBG b5b3d6f0 cdb_synchronised.cpp 180 : Update DB
2010/08/14 08:50:21 <Unknown> INF b5b3d6f0 impulse_decoder.cpp 82 : CLIMPD: received new impulsion 1 (len=131) at level 2 (channel 2)
2010/08/14 08:50:21 <Unknown> DBG b5b3d6f0 impulse_decoder.cpp 92 : CLIMPD: at level 2 (channel 2), 1 actions (ReceivedAck=9561/lastAck=9559/nextSentPacket=9563)
2010/08/14 08:50:21 <Unknown> DBG b5b3d6f0 cdb_synchronised.cpp 180 : Update DB
2010/08/14 08:50:21 <Unknown> AST b5b3d6f0 clustered_sound.cpp 878 : "soundStatus.Dist < _MaxEarDistance" 
-------------------------------
User Crash Callback:
-------------------------------
UserId: 380126
HomeId: 101
ShardId: 101
On a Mainland Shard
Application: ryzom_live
Player Name: 'Markanjio'
UserPosition: 4686.79 -3363.62 -7.45
ViewPosition: 4686.79 -3363.62 -7.45
Time in game: 0h 32min 52sec
LocalTime: 2010/08/14 08:50:21
ServerTick: 1693176238
ConnectState: Connected
LocalAddress: :55416 (192.168.1.42)
Language: English
ClientVersion: NATIVE LINUX
PatchVersion: 610
Client is online
NumServerHOP: 1
NumFarTP: 0
NumReselectPerso: 0
Connection Events: HOP
Memory: 2172MB/3295MB
Process Virtual Memory: 0B
OS: Linux version 2.6.32-trunk-686 (Debian 2.6.32-5) ([email protected]) (gcc version 4.3.4 (Debian 4.3.4-6) ) #1 SMP Sun Jan 10 06:32:16 UTC 2010
Processor: AMD Athlon(tm) 64 X2 Dual Core Processor 5600+ / ? Family 15 Model 107 Stepping 2 / AuthenticAMD / 2900.000MHz / ? Processors found
CPUID: 0
HT: NO
CpuMask: 1
NeL3D: OpenGL / NVIDIA Corporation / GeForce GTS 250/PCI/SSE2/3DNOW! / 3.2.0 NVIDIA 195.36.24
Sound mixer: 
    Playing sources: 52 
    Available tracks: 20 
    Used tracks: 12 
    Muted sources: 0
    Sources waiting for play: 0 
    HighestPri: 0 / 2 
    HighPri:    0 / 4
    MidPri:     12 / 6 
    LowPri:     0 / 8 
    FreeTracks: 20 / 32 
    Average update time: 0.000008 msec
    Average create time: 0.000000 msec
    Estimated CPU: 0.000030%%
Sound driver: 
-------------------------------

RE: Client crash - Added by bgoins about 8 years ago

I am using the native linux client on a fresh install of Ubuntu 10.04. My machine has a 2 GHz processor, 512 MB Ram, 1 GB swap, and a Geforce FX 5200 video card.

I just experienced four client crashes. The first two were during the creation of my avatar, the third was after the avatar's creation, and the fourth was after I pressed the 'play' button.

On the first three, the mouse became unresponsive in the game window, but was working outside the window. I X'ed (closed) the window and issued a <Ctrl>-C to stop the process in the console. After a short amount of time I restarted the game.

On the fourth one, I 'lost' the game window and my video resolution was changed. The music was still playing, but no window. I reset my video resolution and issued to <Ctrl>-C to stop the process (and music).

RE: Client crash - Added by kervala about 8 years ago

bgoins wrote:

On the fourth one, I 'lost' the game window and my video resolution was changed. The music was still playing, but no window. I reset my video resolution and issued to <Ctrl>-C to stop the process (and music).

Did you have a black window ?

If yes, you can shade, resize or minimize your window to get content back.

Bug is fixed in current mercurial so you have to wait a next static test version.

RE: Client crash - Added by bgoins about 8 years ago

kervala wrote:

Did you have a black window ?
If yes, you can shade, resize or minimize your window to get content back.

My 'screen 0' (1440 x 900) did go black for about a second, or two, then came back back on in reduced resolution (1024 x 768).
(The ryzom_client window was running at 1024 x 768 resolution.)

The client window was completely gone and did not show up on my lower panel. The console indicated that the client was still running, but I had no window. (It maybe worth noting that the music was still playing.)


As a separate issue, I noticed that the 'game configuration' button on the signon screen does nothing when selected. (When passing my mouse pointer over it, the lettering does change from light green to yellow, and a light green ring surrounds it.)

RE: Client crash - Added by bgoins about 8 years ago

UPDATE:

I changed my ryzom_client window resolution to 1440 x 900 and was able to go through several training exercises. Everything worked well until I got myself killed. At that point, the graphics got weird. Although I could see trees moving in the background, I couldn't do anything. After a few minutes of nothingness, I had to <Ctrl><Alt><Backspace>.

(1-18/18)