Bug in Linux version when connecting to servers?

Discussion related to Turbo Sliders and beta version feedback.

Moderator: Forum Moderators

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Bug in Linux version when connecting to servers?

Post by captainpotato » Sat Jan 15, 2005 4:56 pm

I'm been having a few (seemingly random) issues connecting to servers from time to time using the static Linux version. When I try to connect, TS just freezes after it has displayed the 'connecting to server' message.

The problem seems to be random, but I have more problems if I am tryting to connect to a smaller server (not the US or UK demo/full servers), or if I have a server running and somebody connects to it. It doesn't happen all the time, so it's hard to say if there is something that causes it to happen.

The only way out of it is to kill the X server.

Any ideas?

User avatar
Hengari
Community User Level: 3
Community User Level: 3
Posts: 462
Joined: Thu Nov 18, 2004 5:14 pm
Contact:

Re: Bug in Linux version when connecting to servers?

Post by Hengari » Sat Jan 15, 2005 6:11 pm

captainpotato wrote:I'm been having a few (seemingly random) issues connecting to servers from time to time using the static Linux version. When I try to connect, TS just freezes after it has displayed the 'connecting to server' message.
It takes sometimes a _long_ time to go off from that "connecting to server" message but I have tested it just a few times. Just wait a bit longer :)
captainpotato wrote: The only way out of it is to kill the X server.
You can use command "killall sliders.linux.static" or "killall -9 sliders.linux.static" or look with command "ps" turbosliders pid-number and then use command "kill -9 <pid>" (ex. kill -9 78643)
oldschool slider <3 | Hengari @ Quakenet/IRCnet
sliderpoint

Guest

How?

Post by Guest » Sun Jan 16, 2005 12:51 pm

Hengari,

Thanks for the tip - I'll try it now (although I have waited up to 30-40 seconds in the past).

How do I kill it if I run it full screen? As soon as I <ctrl><alt><fx> (where x is a number - ie - the function keys), I cannot get back to the KDE GUI.

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Post by captainpotato » Sun Jan 16, 2005 12:53 pm

The above message was from me (didn't auto log me in for some reason...)

User avatar
Hengari
Community User Level: 3
Community User Level: 3
Posts: 462
Joined: Thu Nov 18, 2004 5:14 pm
Contact:

Re: How?

Post by Hengari » Sun Jan 16, 2005 2:40 pm

captainpotato wrote: How do I kill it if I run it full screen? As soon as I <ctrl><alt><fx> (where x is a number - ie - the function keys), I cannot get back to the KDE GUI.
try to go <ctrl><alt><f1-f6> to the console screen, where you can login and use the ps and kill commands.
oldschool slider <3 | Hengari @ Quakenet/IRCnet
sliderpoint

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Mon Jan 17, 2005 8:10 am

Similar problem can happen with Windows version if trying to connect a server that is behind a firewall that just drops all packets without notifying about the error. In this case, connection attempts take lots of time.

Unfortunately SDL_net doesn't seem to support any way to decrease the timeout time but I try to see if there is any solution to this...

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Okay...

Post by captainpotato » Tue Jan 18, 2005 11:11 am

Hengari: that's what I do, but when I do that, I cannot get the X server back :P

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

That's not it.

Post by captainpotato » Tue Jan 18, 2005 11:15 am

Ande: Thanks for the suggestion, but that's not it - I'm aware of this issue as well. The issue I'm talking about is a complete (or so it seems) lockup of TS. The issue with servers behind firewalls is something different (I get a message about this - forget exactly what it says), but generally speaking, when the crash happens that I'm talking about, I've already connected and am on the chat screen (or whatever it's called - the screen between races, that is).

I haven't tried it again since posting this, so maybe you and Hengari are right. I'll let you know.

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Re: That's not it.

Post by Ande » Tue Jan 18, 2005 2:23 pm

captainpotato wrote:when the crash happens that I'm talking about, I've already connected and am on the chat screen (or whatever it's called - the screen between races, that is).
Ah ok, that sounds bad. It is probably something Linux related since I have not heard of any in-game crashes in Windows. How often does that seem to happen? Can you tell exactly when that happens? Could it be that it happens when the client would start loading the next track or does it happen after that?

User avatar
Hengari
Community User Level: 3
Community User Level: 3
Posts: 462
Joined: Thu Nov 18, 2004 5:14 pm
Contact:

Re: That's not it.

Post by Hengari » Tue Jan 18, 2005 2:43 pm

Ande wrote: Ah ok, that sounds bad. It is probably something Linux related since I have not heard of any in-game crashes in Windows.
Heh, as you now mention about it I have had a couple of time in certain users server that I can chat and all but when the track gets loaded and the race begin I lost all control of TS and it just hangs. There was some error in the console screen but I dont remember what was it. Maybe a segfault. Though happened only in one private server and don't remember whose so a vague description :)

Captainpotato:
Hmmm, I have always got back the x server though I run TS in window and use <crtl>-<alt>-<+ and -> to adjust the screen. I had some bad experiences in 0.86 about running in full screen and it ran faster in window (nowadays about the same if in fullsceen or window) so I keeped to play in window.
oldschool slider <3 | Hengari @ Quakenet/IRCnet
sliderpoint

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Tue Jan 18, 2005 3:05 pm

Ok, then there really seems to be a Linux issue somewhere and I would of course want it to be fixed.

I could make a special debug Linux version which you can test if you want to. It could produce some more debug information in output.txt and if the game happened to crash, you could send it to me and I might be able to fix it. First, I would need to know exactly where the error happens. Do you remember if it was before or after track loading? So did you first see the screen go black with the progress bar and did the loading finish? And if it was after the track loading, did the crash occur before or after the race start waiting screen was switched to track view?

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Re: That's not it.

Post by captainpotato » Wed Jan 19, 2005 7:10 am

Ande wrote:Ah ok, that sounds bad. It is probably something Linux related since I have not heard of any in-game crashes in Windows. How often does that seem to happen? Can you tell exactly when that happens? Could it be that it happens when the client would start loading the next track or does it happen after that?
It's random, but I'd say more on user servers (not the main ones). It happens at a couple of different stages: as soon as the chat screen appears, when tracks/cars are being downloaded (as soon as it starts), or when the 'loading track' screen should appear.

As stated, it's a (seemingly) random event, so I'm not sure I can pinpoint it. However, generally speaking, once it happens with a single server, it happens repeatedly with it - ie - if TS hangs and then I reload and return to the same server, it hangs again.

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Re: That's not it.

Post by captainpotato » Wed Jan 19, 2005 7:12 am

Hengari wrote: Heh, as you now mention about it I have had a couple of time in certain users server that I can chat and all but when the track gets loaded and the race begin I lost all control of TS and it just hangs. There was some error in the console screen but I dont remember what was it. Maybe a segfault. Though happened only in one private server and don't remember whose so a vague description :)
That sound similar, but I don't get the track loaded. I don't recall an error, but I may be wrong on that count.
Hengari wrote: Captainpotato:
Hmmm, I have always got back the x server though I run TS in window and use <crtl>-<alt>-<+ and -> to adjust the screen. I had some bad experiences in 0.86 about running in full screen and it ran faster in window (nowadays about the same if in fullsceen or window) so I keeped to play in window.
Ah, I run fullscreen, so I'll try that instead. It's a pain having to restart the X server each time it hangs :P

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Post by captainpotato » Wed Jan 19, 2005 7:17 am

Ande wrote:I could make a special debug Linux version which you can test if you want to. It could produce some more debug information in output.txt and if the game happened to crash, you could send it to me and I might be able to fix it. First, I would need to know exactly where the error happens. Do you remember if it was before or after track loading? So did you first see the screen go black with the progress bar and did the loading finish? And if it was after the track loading, did the crash occur before or after the race start waiting screen was switched to track view?
Sounds good. As far as what happens:
- It always happens before the track loads (or on the 'loading track' screen at the latest);
- It just locks up. Nothing changes - whether that be the ability to type, the progress bar continuing - it freezes as is;
- As I wrote in a previous post, I'd guess it happens a lot more frequently with user servers (and possibly user tracks). Come to think of it, I think I had my server crash when somebody connected to it (I run an sutoserver on a separate box from the one I use to actually play the game).

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Wed Jan 19, 2005 9:45 am

captainpotato wrote: - It always happens before the track loads (or on the 'loading track' screen at the latest);
But it has happened at least once in the track loading screen, too? When that happens, the progress bar just hangs? And it has also happened before track loading so that starfield etc. have stopped? Have both these happened both with server and client?

If you are using the static version of the game, it could actually be that some of the libraries are old and buggy. The fact that the whole X freezes could imply that there is something wrong in the X stuff itself. Shouldn't it be impossible for a user program to crash X if X is working ok?

Have you managed to run the game with non-static libraries and if not, which libraries are you missing?
- As I wrote in a previous post, I'd guess it happens a lot more frequently with user servers (and possibly user tracks). Come to think of it, I think I had my server crash when somebody connected to it (I run an sutoserver on a separate box from the one I use to actually play the game).
Ok, so the other possibility could be that it has something to do with the network code or libraries.

I try to make some kind of special test build, but I am still wondering where to put that extra debug :).

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Post by captainpotato » Wed Jan 19, 2005 10:01 am

Ande wrote: But it has happened at least once in the track loading screen, too? When that happens, the progress bar just hangs? And it has also happened before track loading so that starfield etc. have stopped? Have both these happened both with server and client?
I run the autoserver on a second box that is too slow for the GUI, so I cannot comment on what happens visually with it. In terms of the client, yes.
Ande wrote: If you are using the static version of the game, it could actually be that some of the libraries are old and buggy. The fact that the whole X freezes could imply that there is something wrong in the X stuff itself. Shouldn't it be impossible for a user program to crash X if X is working ok?
I run in fullscreen, which means I cannot simply switch back to the desktop, so whilst X is still up and running fine, I haven't been able to return to it without killing TS, and with it the X server.
Ande wrote: Have you managed to run the game with non-static libraries and if not, which libraries are you missing?
I'll try again and see. I use the static version because I couldn't get the non-static version running on Slackware 10.
Ande wrote: Ok, so the other possibility could be that it has something to do with the network code or libraries.

I try to make some kind of special test build, but I am still wondering where to put that extra debug :).
Great. I look forward to it.

As fate would have it, today I've had no problems at all, but I'll keep trying :)

User avatar
Hengari
Community User Level: 3
Community User Level: 3
Posts: 462
Joined: Thu Nov 18, 2004 5:14 pm
Contact:

Post by Hengari » Wed Jan 19, 2005 10:34 am

captainpotato wrote: I'll try again and see. I use the static version because I couldn't get the non-static version running on Slackware 10.
Have you tried my Ts-in-linux -guide? A rough guide for getting TS to run in linux and made for Gentoo and Linux so I don't know how packages are managed in Slackware. The guide is here: http://www.dhost.info/sliderpoint/ts-in-linux.php
oldschool slider <3 | Hengari @ Quakenet/IRCnet
sliderpoint

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Wed Jan 19, 2005 7:52 pm

I may now know what the problem is. I think that there is a bug in SDL_net which sometimes causes TCP packet sending to cause signal SIGPIPE which in turn crashes the game. If you have ever seen any error message in console window please tell it because it could help to determine what the cause is. If my SIGPIPE theory holds, you should see text "Broken Pipe" when it happens. On the other hand, if you can see for example text "Segmentation fault", it is something else...

But I investigate the problem some more and try to make a new Linux build if I find a way to overcome the problem. I have ideas but testing is very hard...

User avatar
Hengari
Community User Level: 3
Community User Level: 3
Posts: 462
Joined: Thu Nov 18, 2004 5:14 pm
Contact:

Post by Hengari » Mon Feb 21, 2005 8:56 pm

I got finally to reproduce that crashing error that I had. It wasn't directly concerning Turbosliders but well, here are the details.

>> After selecting the car air-super3 and the track has finished to load the game crashes.
>> Tested with TS version 1.0.3, gentoo64, sb live!
>> both the dynamic and static versions
>> You can test it yourself:
- select a car: air-super3, select any track and play, --> crash
>> If using ./sliders.linux -sound 0, there is no problem -> air-super3.wav ja openal? are not working together.

The actual errors were like this:
wallin@pikseli ~/sliders $ ./sliders.linux
*** glibc detected *** double free or corruption (out): 0x080c27e7 ***
Aborted
wallin@pikseli ~/sliders $ cat output.txt
--clip--
AL_ERROR: AL error 40963/a003 (alBufferData)

wallin@pikseli ~/sliders $ ./sliders.linux.static
Fatal signal: Segmentation Fault (SDL Parachute Deployed)
wallin@pikseli ~/sliders $ cat output.txt
--clip--
AL_ERROR: AL error 40963/a003 (alBufferData)


Additionally I noticed that for some reason slider.linux.static can't get master server -list and output.txt says:
>> Resolving host turboserver.org failed
oldschool slider <3 | Hengari @ Quakenet/IRCnet
sliderpoint

Guest

Post by Guest » Mon Feb 21, 2005 9:21 pm

Thank you for your information. I try to reproduce that later myself but that debug information helped to find the exact place where the crash occurs. There is no apparent bug in the TS code, though, so I may have to ask OpenAL guys if they have something to say about it...

To get more debug, you could add -D A as a command line parameter. It would show the exact sample it is loading and some properties about it.

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Tue Feb 22, 2005 8:41 am

I am beginning to lose faith in OpenAL...

I just read the ALUT Linux WAV loading code and it seems that when loading fails, it just happily returns uninitialized data that will of course later crash the game. I really wonder if anyone has ever used that code in anything useful...

I don't know why loading that particular wav fails but at least this explains the crash. I try to find a workaround in the next version.

Finster
Posts: 21
Joined: Wed Jan 19, 2005 8:07 pm

linux + punaball = crash

Post by Finster » Fri Feb 25, 2005 10:17 pm

I think I am getting a similar problem.

For the most part I have no problem with using Linux for racing. If fact I never had a problem on a normal server (except lag) but that's unavoidable especially cause I'm only on a 56k modem :(

My Linux problem happens when I try to play a game of "punaball" or whatever you wanna call it. I think it is specificly with the sound file used for the "ball" car, but that is just a guess.

I've tried erasing the car/tmp directory and regetting the files and still it locks up on me. After the game is started the track loads (I see the progress bar) and then it freezes (the stars stop moviing). I can't select any option at that point and must shutdown X-windows with Ctrl+Alt+Backspace. Oh and sometimes the music will keep playing other times that stops too. If I run the game in a window I see:

Fatal signal: Segmentation Fault (SDL Parachute Deployed)

And in output.txt the last line is:
AL_ERROR: AL error 40963/a003 (alBufferData)

Currently I'm running RedHat 9 and this happens with the static or the dynamic version. Also I've tried upgrading my SDL, thinking that it might help. Same problem. Not a big deal really because I can play the game normally with no problem. Just thought you'd guys might like to know or could suggest something.

Thanks
Finster

P.S. I'd like to thank Morpheus for trying to help me solve this problem on his punaball server.

User avatar
Ande
Game Developer
Game Developer
Posts: 487
Joined: Thu Oct 14, 2004 9:43 pm

Post by Ande » Sat Feb 26, 2005 3:23 pm

Better reply here, too...

New versions will soon be distributed but you can already download the new Linux version here:

http://www.jollygoodgames.com/download/ ... slinux.zip

That version should not crash any more with loading wavs nor with bad connections. I don't know why OpenAL can't load certain wavs but at least it shouldn't crash any more as it previously did.

captainpotato
Community User Level: 1
Community User Level: 1
Posts: 42
Joined: Sun Jan 02, 2005 11:30 am
Contact:

Re: linux + punaball = crash

Post by captainpotato » Tue Mar 01, 2005 4:28 am

Finster wrote:I think I am getting a similar problem.

For the most part I have no problem with using Linux for racing. If fact I never had a problem on a normal server (except lag) but that's unavoidable especially cause I'm only on a 56k modem :(

My Linux problem happens when I try to play a game of "punaball" or whatever you wanna call it. I think it is specificly with the sound file used for the "ball" car, but that is just a guess.
That's exactly it - ah, it's not just me, at least :)

I've tried erasing the car/tmp directory and regetting the files and still it locks up on me. After the game is started the track loads (I see the progress bar) and then it freezes (the stars stop moviing). I can't select any option at that point and must shutdown X-windows with Ctrl+Alt+Backspace. Oh and sometimes the music will keep playing other times that stops too. If I run the game in a window I see:

Fatal signal: Segmentation Fault (SDL Parachute Deployed)

And in output.txt the last line is:
AL_ERROR: AL error 40963/a003 (alBufferData)

Currently I'm running RedHat 9 and this happens with the static or the dynamic version. Also I've tried upgrading my SDL, thinking that it might help. Same problem. Not a big deal really because I can play the game normally with no problem. Just thought you'd guys might like to know or could suggest something.
I've had it on both Slackware 10.0 and Ubuntu 4.10, so it's not just RH9.
P.S. I'd like to thank Morpheus for trying to help me solve this problem on his punaball server.
I haven't been able to stay connected for long enough to chat with Morpheus to have any assistance in dianosing it :P

Now that 1.0.3 has been released, I'll have to download it and try again. t would be nice to *finally* play a game of Punaball :)

Finster
Posts: 21
Joined: Wed Jan 19, 2005 8:07 pm

Post by Finster » Tue Mar 01, 2005 2:44 pm

I downloaded the new version you suggested (1.0.3) and it solved the problem.

Thanks!

Post Reply