help debugging segfault with alienarena 7.32

Tom "spot" Callaway tcallawa at redhat.com
Tue Nov 3 16:45:58 UTC 2009


I need to rebuild alienarena for all targets due to a security issue, so
I decided to update to 7.32, but unfortunately, the 7.32 build segfaults
immediately on Fedora 12 (x86_64), and gdb isn't much help (gdb output
is at the bottom).

Now, it is worth noting that the alienarena client does dlopen the
openal-soft library by name:

   const char libopenal_name[] = "libopenal.so.1.9.563";
   void *dynlib;

   dynlib = dlopen( libopenal_name, RTLD_LAZY | RTLD_GLOBAL );

However, I can't seem to find a breakpoint that gdb will hit before the
app segfaults, and printfs never get triggered.

Any and all help is appreciated, as I'd like to get this fixed before F-12.

[spot at pterodactyl release]$ gdb ./crx
GNU gdb (GDB) Fedora (7.0-3.fc12)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
/home/spot/cvs/alienarena/F-12/alienarena-7.32/source/release/crx...done.
(gdb) run
Starting program:
/home/spot/cvs/alienarena/F-12/alienarena-7.32/source/release/crx
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffea1e0710 (LWP 18787)]
[Thread 0x7fffea1e0710 (LWP 18787) exited]
[New Thread 0x7fffea1e0710 (LWP 18788)]
[Thread 0x7fffea1e0710 (LWP 18788) exited]
[New Thread 0x7fffea1e0710 (LWP 18789)]
[Thread 0x7fffea1e0710 (LWP 18789) exited]
[New Thread 0x7fffea1e0710 (LWP 18790)]
[Thread 0x7fffea1e0710 (LWP 18790) exited]
[New Thread 0x7fffea1e0710 (LWP 18791)]
Detaching after fork from child process 18792.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffea1e0710 (LWP 18791)]
pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:170
170		LOCK
Current language:  auto
The current source language is "auto; currently asm".
(gdb) info threads
* 6 Thread 0x7fffea1e0710 (LWP 18791)  pthread_cond_wait@@GLIBC_2.3.2 ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:170
  1 Thread 0x7ffff7fb77e0 (LWP 18784)  _dl_map_object
(loader=0x7ffff7fcc4d0, name=0x7ffff660574a "libportaudio.so.2",
    preloaded=<value optimized out>, type=<value optimized out>,
trace_mode=<value optimized out>, mode=-1879048190, nsid=0) at
dl-load.c:1981
(gdb) bt
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:170
#1  0x00007fffeff883bb in ?? ()
#2  0x00007fffea1e0710 in ?? ()
#3  0x00007ffff4f8696a in start_thread (arg=<value optimized out>) at
pthread_create.c:297
#4  0x00007ffff5aaa8bd in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()
(gdb) thread 1
[Switching to thread 1 (Thread 0x7ffff7fb77e0 (LWP 18784))]#0
_dl_map_object (loader=0x7ffff7fcc4d0, name=0x7ffff660574a
"libportaudio.so.2",
    preloaded=<value optimized out>, type=<value optimized out>,
trace_mode=<value optimized out>, mode=-1879048190, nsid=0) at
dl-load.c:1981
1981		  if (__builtin_expect (l->l_soname_added, 1)
Current language:  auto
The current source language is "auto; currently c".
(gdb) bt
#0  _dl_map_object (loader=0x7ffff7fcc4d0, name=0x7ffff660574a
"libportaudio.so.2", preloaded=<value optimized out>, type=<value
optimized out>,
    trace_mode=<value optimized out>, mode=-1879048190, nsid=0) at
dl-load.c:1981
#1  0x00007ffff7df0299 in dl_open_worker (a=<value optimized out>) at
dl-open.c:254
#2  0x00007ffff7deb7c6 in _dl_catch_error (objname=<value optimized
out>, errstring=<value optimized out>, mallocedp=<value optimized out>,
    operate=<value optimized out>, args=<value optimized out>) at
dl-error.c:178
#3  0x00007ffff7defca7 in _dl_open (file=0x7ffff660574a
"libportaudio.so.2", mode=-2147483646, caller_dlopen=0x7ffff65ffaf1,
nsid=-2, argc=1,
    argv=<value optimized out>, env=0x7fffffffe0c8) at dl-open.c:583
#4  0x00007ffff7955f66 in dlopen_doit (a=<value optimized out>) at
dlopen.c:67
#5  0x00007ffff7deb7c6 in _dl_catch_error (objname=<value optimized
out>, errstring=<value optimized out>, mallocedp=<value optimized out>,
    operate=<value optimized out>, args=<value optimized out>) at
dl-error.c:178
#6  0x00007ffff795629c in _dlerror_run (operate=0x7ffff7955f00
<dlopen_doit>, args=0x7fffffffdeb0) at dlerror.c:164
#7  0x00007ffff7955ee1 in __dlopen (file=<value optimized out>,
mode=<value optimized out>) at dlopen.c:88
#8  0x00007ffff65ffaf1 in pa_load () at
/usr/src/debug/openal-soft/Alc/portaudio.c:66
#9  0x00007ffff65ffee8 in alc_pa_probe (type=1) at
/usr/src/debug/openal-soft/Alc/portaudio.c:289
#10 0x00007ffff65e8bfe in alc_init () at
/usr/src/debug/openal-soft/Alc/ALc.c:297
#11 0x00007ffff6602556 in __do_global_ctors_aux () from
/usr/lib64/libopenal.so.1
#12 0x00007ffff65d8aeb in _init () from /usr/lib64/libopenal.so.1
#13 0x00007fffffffe0c8 in ?? ()
#14 0x00007ffff7debb29 in call_init (l=0x7ffff7fcc4d0, argc=-159341768,
argv=0x7fffffffe0b8, env=0x7fffffffe0c8) at dl-init.c:70
#15 0x00007ffff7debcaf in _dl_init (main_map=0x7ffff7ffe0e8, argc=1,
argv=0x7fffffffe0b8, env=0x7fffffffe0c8) at dl-init.c:134
#16 0x00007ffff7dddb2a in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
#17 0x0000000000000001 in ?? ()
#18 0x00007fffffffe3d4 in ?? ()
#19 0x0000000000000000 in ?? ()
(gdb)




More information about the fedora-devel-list mailing list