I've gotten the strangest hang yet.

It's hanging inside of Player::EventServiceThreadfunc, at
pP->m_eventSem->Wait().

The kicker is that there are no other threads alive that even
reference that semaphore! In fact, the only place that this
particular variable is used is player.cpp.

a (long) backtrace follows.

(gdb) set height 0
(gdb) thr ap al bt

Thread 14 (Thread 4 (LWP 6)):
#0  0xff115c90 in _poll () from /usr/lib/libc.so.1
#1  0xff0ce674 in select () from /usr/lib/libc.so.1
#2  0xff04b1d4 in select () from /usr/lib/libthread.so.1
#3  0xff2f3514 in _XRead () from /usr/openwin/lib/libX11.so.4
#4  0xff2f7e58 in _XReadEvents () from /usr/openwin/lib/libX11.so.4
#5  0xff2f445c in XNextEvent () from /usr/openwin/lib/libX11.so.4
#6  0xfe5325ec in FreeAmpUI::X11EventService (this=0x8cb08)
    at ui/freeamp/unix/src/freeamp.cpp:545
#7  0xfe532528 in FreeAmpUI::x11ServiceFunction (p=0x8cb08)
    at ui/freeamp/unix/src/freeamp.cpp:509
#8  0x417d0 in solarisThread::InternalThreadFunction (this=0x0)
    at base/unix/solaris/src/solaristhread.cpp:78
#9  0x417a8 in solarisThread::internalThreadFunction (arg=0x87768)
    at base/unix/solaris/src/solaristhread.cpp:64

Thread 13 (LWP    13        ):
#0  0xff11501c in door_restart () from /usr/lib/libc.so.1

Thread 12 (LWP    12        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 11 (LWP    11        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 10 (LWP    10        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 9 (LWP    9        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 8 (LWP    8        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 7 (LWP    7        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 6 (LWP    6        ):
#0  0xff115c90 in _poll () from /usr/lib/libc.so.1
#1  0xff0ce674 in select () from /usr/lib/libc.so.1
#2  0xff04b1d4 in select () from /usr/lib/libthread.so.1
#3  0xff2f3514 in _XRead () from /usr/openwin/lib/libX11.so.4
#4  0xff2f7e58 in _XReadEvents () from /usr/openwin/lib/libX11.so.4
#5  0xff2f445c in XNextEvent () from /usr/openwin/lib/libX11.so.4
#6  0xfe5325ec in FreeAmpUI::X11EventService (this=0x8cb08)
    at ui/freeamp/unix/src/freeamp.cpp:545
#7  0xfe532528 in FreeAmpUI::x11ServiceFunction (p=0x8cb08)
    at ui/freeamp/unix/src/freeamp.cpp:509
#8  0x417d0 in solarisThread::InternalThreadFunction (this=0x0)
    at base/unix/solaris/src/solaristhread.cpp:78
#9  0x417a8 in solarisThread::internalThreadFunction (arg=0x87768)
    at base/unix/solaris/src/solaristhread.cpp:64

Thread 5 (LWP    5        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1

Thread 4 (LWP    4        ):
#0  0xff117544 in _sigsuspend () from /usr/lib/libc.so.1
#1  0xff0499f4 in sigsuspend () from /usr/lib/libthread.so.1
#2  0xff0d6c44 in _usleep () from /usr/lib/libc.so.1
#3  0xff04b274 in usleep () from /usr/lib/libthread.so.1
#4  0x417d0 in solarisThread::InternalThreadFunction (this=0x0)
    at base/unix/solaris/src/solaristhread.cpp:78
#5  0x417a8 in solarisThread::internalThreadFunction (arg=0x87790)
    at base/unix/solaris/src/solaristhread.cpp:64

Thread 3 (LWP    3        ):
#0  0xff117a74 in _lwp_sema_wait () from /usr/lib/libc.so.1
#1  0xff03b04c in _park () from /usr/lib/libthread.so.1
#2  0xff03ad40 in _swtch () from /usr/lib/libthread.so.1
#3  0xff039a00 in cond_wait () from /usr/lib/libthread.so.1
#4  0xff039924 in pthread_cond_wait () from /usr/lib/libthread.so.1
#5  0x41b5c in Semaphore::Wait (this=0x886e8)
    at base/unix/solaris/src/semaphore.cpp:50
#6  0x313c8 in Player::EventServiceThreadFunc (pPlayer=0x885a0)
    at base/src/player.cpp:585
#7  0x417d0 in solarisThread::InternalThreadFunction (this=0x0)
    at base/unix/solaris/src/solaristhread.cpp:78
#8  0x417a8 in solarisThread::internalThreadFunction (arg=0x877b8)
    at base/unix/solaris/src/solaristhread.cpp:64

Thread 2 (LWP    2        ):
#0  0xff117444 in _signotifywait () from /usr/lib/libc.so.1
#1  0xff03f598 in _dynamiclwps () from /usr/lib/libthread.so.1

Thread 1 (LWP    1        ):
#0  0xff117a28 in ___lwp_cond_wait () from /usr/lib/libc.so.1
#1  0xff10f7c0 in _lwp_cond_timedwait () from /usr/lib/libc.so.1
#2  0xff03a730 in _age () from /usr/lib/libthread.so.1
#0  0xff115c90 in _poll () from /usr/lib/libc.so.1
(gdb)

Reply via email to