Back to the Vavoom Forum Archives


Forum

[Fixed] [linux] vavoom segfaults on startup

Sun, 06 Mar 2005 09:27:09

jw

After upgrading my linux box from slackware 10.0 to archlinux 0.7 vavoom will not run any more. When compiling with USE_SDL=1 vavoom freezes on startup. Output:
> ./Vavoom
adding doom2.wad
adding basev/doom/wad0.wad
adding basev/doom2/wad0.wad
Selected SDL sound device
[..and nothing happens..] 
Running with -nosound gives:
> ./Vavoom -nosound
adding doom2.wad
adding basev/doom/wad0.wad
adding basev/doom2/wad0.wad
Selected Null sound device
Selected Software reaserizer

Segmentation Violation
Adding -opengl does not help. I also tried compiling without USE_SDL=1, but this changes very little. I had vavoom running just fine on this system before the upgrade. I am on an Athlon 1700XP, with GeFore2 MX card and an SB AudioPCI 64 (ens1371). My current system (archlinux) has installed: kernel 2.6.10, nvidia drivers 6629, gcc 3.4.3, glibc 2.3.4, xorg 6.8.2, sdl 1.2.8, allegro 4.1.18 The system that worked (slackware) had the following versions: kernel 2.4.26, nvidia drivers 4496, gcc 3.3.4, glibc 2.3.2, xorg 6.7.0, sdl 1.2.7, and no allegro. BTW: This is an amazing doom port. Thank you for the great work.
Sun, 06 Mar 2005 10:49:40

jw

I did some more testing. I installed a 2.4.29 kernel and booted into Xorg using the "nv" (unaccelerated) driver instead of "nvidia". The freeze on startup for the SDL version dissappears, but the segfault does not <!-- s:( --><img src="{SMILIES_PATH}/icon_sad.gif" alt=":(" title="Sad" /><!-- s:( --> So, it seems the problem is not related to the kernel or the nvidia driver. Also, the segfault occurs for both the slackware-compiled binary (SDL) and the archlinux-binaries (SDL & Allegro). This would seem to indicate that it is not a GCC problem either. I will look into downgrading Xorg to 6.7.0, but this is a big hassle. Archlinux does not keep old binaries, so I will have to use the build system to compile from the sources. BTW, I tried running with -DEBUG, but this does not produce any additional output. Sorry for flooding you with info like this. I'd really like to get vavoom working again, if at all possible.
Mon, 07 Mar 2005 08:13:54

Janis Legzdinsh

Right now I'm having a similar problem and I have to use -nolan option to disable network drivers. My system is like yours except I have Linux 2.6.11. Running with -DEBUG option will create debug.txt in basev folder, in the end there should be a crash dump that will help me a lots.
Mon, 07 Mar 2005 10:00:57

jw

Thanks for the reply. Using -nolan I can run Vavoom on 2.6.10 with allegro. SDL still hangs on startup. I've noticed some issues with DGA: 1. If DGA is disabled in the xorg.conf, display is choppy (even in opengl mode) 2. If DGA is enabled, the mouse no longer works properly. All mouse movement seems to be interpreted in the same direction, i.e. moving mouse left or right turns you in righthand circles. Here's the "debug.txt" when doing ">Vavoom -opengl -debug":
0x2000000 (32.000000 meg) allocated for zone, ZoneBase: 0xB4A79008
Init: adding doom2.wad
Init: adding doom2.gwa
Init: adding basev/doom/wad0.wad
Init: adding basev/doom2/wad0.wad
Init: Selected Allegro sound device
Init: configured audio device
Init: SFX   : Alsa 0.9, Device 'default': 16 bits, unsigned, 44100 bps, stereo
Init: Music : ES1371
Init: CD_Init: open of "/dev/cdrom" failed (2)
Init: Selected OpenGL rasterizer device
- UDP_Init
- Datagram_Init
- NET_Init
- Host_Init
STACK TRACE:

stack 0 0xb7c4219d frame 0 0xbffff7c8
stack 1 0x806d461 frame 1 0xbffff828


ERROR: Segmentation Violation
Mon, 07 Mar 2005 11:36:44

Janis Legzdinsh

Yes, in Allegro + OpenGL mouse doesn't work properly. I'm working on this issue. It looks like Allegro doesn't like that I'm recreating the window, OTOH it was working before. For me SDL works fine. Crash dump shows that it fails in initialising the UDP (LAN) driver, so use -nolan for now.
Tue, 08 Mar 2005 08:04:35

Janis Legzdinsh

I found what was the problem with network driver. Check your /etc/hosts file and make sure that it has line like this:
<your_ip_address> <your_host_name> 
where your_ip_adress is your IP address and your_host_name is the name of your local machine.
Sat, 12 Mar 2005 11:40:14

jw

Thanks for the tip! Adding my hostname to /etc/hosts fixes the Segfault problem. The SDL version still does not get past "Selected SDL sound device". This is on kernel 2.6.10, sdl 1.2.8, and the ens1371 driver. Booting into kernel 2.4.29 fixes the problem. Here is a list of loaded modules in 2.6.10:
joydev                 10560  0
evdev                   9984  0
tsdev                   8128  0
sis900                 21508  0
snd_seq_oss            36224  0
snd_seq_midi_event      8192  1 snd_seq_oss
usbhid                 45824  0
snd_seq                57232  4 snd_seq_oss,snd_seq_midi_event
snd_pcm_oss            56612  0
snd_mixer_oss          21120  1 snd_pcm_oss
snd_ens1371            25440  1
snd_rawmidi            26144  1 snd_ens1371
snd_seq_device          8972  3 snd_seq_oss,snd_seq,snd_rawmidi
snd_ac97_codec         78176  1 snd_ens1371
snd_pcm               101252  3 snd_pcm_oss,snd_ens1371,snd_ac97_codec
snd_timer              27140  2 snd_seq,snd_pcm
snd                    59108  12 snd_seq_oss,snd_seq,snd_pcm_oss,snd_mixer_oss,snd_ens1371,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm,snd_timer
soundcore              10848  1 snd
snd_page_alloc         10244  1 snd_pcm
gameport                5120  1 snd_ens1371
nvidia               3465660  12
uhci_hcd               34576  0
ehci_hcd               35332  0
ohci_hcd               23560  0
usbcore               125560  5 usbhid,uhci_hcd,ehci_hcd,ohci_hcd
rtc                    13128  0
Fri, 18 Mar 2005 10:46:00

jw

Just want to report that the problem is SOLVED in kernel 2.6.11. Vavoom now starts up just fine using SDL. Thanks for the help!
Fri, 18 Mar 2005 13:08:48

Janis Legzdinsh

Good to hear that. I can close this now.

Back to the Vavoom Forum Archives