Deadly lock
Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3676
Reported by Fredrik Noring, Roxen Internet Software noring@roxen.com
(gdb) info threads
20 Thread 11 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
19 Thread 10 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
18 Thread 9 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
17 Thread 8 (LWP 6) 0xff19e838 in _read () from /usr/lib/libc.so.1
16 Thread 6 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
15 Thread 5 (LWP 3) 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
14 Thread 4 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
13 Thread 3 0xff35d9b8 in _reap_wait () from /usr/lib/libthread.so.1
12 Thread 2 (LWP 2) 0xff19ed78 in _signotifywait () from /usr/lib/libc.so.1
11 Thread 1 (LWP 4) 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
10 LWP 2 0xff19ed78 in _signotifywait () from /usr/lib/libc.so.1
9 LWP 3 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
8 LWP 4 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
7 LWP 5 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
6 LWP 6 0xff19e838 in _read () from /usr/lib/libc.so.1
5 LWP 7 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
4 LWP 8 0xff3691fc in private___lwp_cond_wait ()
from /usr/lib/libthread.so.1
3 LWP 9 0xff19c91c in door_restart () from /usr/lib/libc.so.1
* 2 Thread 7 (LWP 1) 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
1 LWP 1 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
(gdb) thread 20
[Switching to thread 20 (Thread 11 )]#0 0xff3581ac in cond_wait ()
from /usr/lib/libthread.so.1
(gdb) bt
#0 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
#1 0xff358078 in pthread_cond_wait () from /usr/lib/libthread.so.1
#2 0x000dca78 in farm (_a=0x165ce30)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/threads.c:1837
#3 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
#4 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 19
[Switching to thread 19 (Thread 10 )]#0 0xff3581ac in cond_wait ()
from /usr/lib/libthread.so.1
(gdb) bt
#0 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
#1 0xff358078 in pthread_cond_wait () from /usr/lib/libthread.so.1
#2 0x000db99c in f_cond_wait (args=1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/threads.c:1425
#3 0x0003c610 in low_mega_apply (type=APPLY_LOW, args=1, arg1=0x282c00,
arg2=0x1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/apply_low.h:195
#4 0x0003968c in opcode_F_CALL_LFUN_AND_POP (arg1=8)
at
/home/distmaker/tmp/build/pike.srcbuild/../pike-cvs/src/interpret_functions.h:1854
#5 0x0073f760 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 18
[Switching to thread 18 (Thread 9 )]#0 0xff19f428 in _lwp_sema_wait ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
#1 0xff3596e4 in _park () from /usr/lib/libthread.so.1
#2 0xff3593ac in _swtch () from /usr/lib/libthread.so.1
#3 0xff3581b4 in cond_wait () from /usr/lib/libthread.so.1
#4 0xff358078 in pthread_cond_wait () from /usr/lib/libthread.so.1
#5 0x000db99c in f_cond_wait (args=1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/threads.c:1425
#6 0x0003c610 in low_mega_apply (type=APPLY_LOW, args=1, arg1=0x282c00,
arg2=0x1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/apply_low.h:195
#7 0x0003968c in opcode_F_CALL_LFUN_AND_POP (arg1=8)
at
/home/distmaker/tmp/build/pike.srcbuild/../pike-cvs/src/interpret_functions.h:1854
#8 0x0073f760 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 17
[Switching to thread 17 (Thread 8 (LWP 6))]#0 0xff19e838 in _read ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19e838 in _read () from /usr/lib/libc.so.1
#1 0xff369fb0 in read () from /usr/lib/libthread.so.1
#2 0xff369fb0 in read () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 16
[Switching to thread 16 (Thread 6 )]#0 0xff19f428 in _lwp_sema_wait ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19f428 in _lwp_sema_wait () from /usr/lib/libc.so.1
#1 0xff3596e4 in _park () from /usr/lib/libthread.so.1
#2 0xff3593ac in _swtch () from /usr/lib/libthread.so.1
#3 0xff3581b4 in cond_wait () from /usr/lib/libthread.so.1
#4 0xff358078 in pthread_cond_wait () from /usr/lib/libthread.so.1
#5 0x000db99c in f_cond_wait (args=1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/threads.c:1425
#6 0x0003c610 in low_mega_apply (type=APPLY_LOW, args=1, arg1=0x282c00,
arg2=0x1)
at /home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/apply_low.h:195
#7 0x0003968c in opcode_F_CALL_LFUN_AND_POP (arg1=8)
at
/home/distmaker/tmp/build/pike.srcbuild/../pike-cvs/src/interpret_functions.h:1854
#8 0x0073f760 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 15
[Switching to thread 15 (Thread 5 (LWP 3))]#0 0xff19d5b4 in _poll ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
#1 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
#2 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 14
[Switching to thread 14 (Thread 4 )]#0 0xff3581ac in cond_wait ()
from /usr/lib/libthread.so.1
(gdb) bt
#0 0xff3581ac in cond_wait () from /usr/lib/libthread.so.1
#1 0xff358078 in pthread_cond_wait () from /usr/lib/libthread.so.1
#2 0x00089904 in wait_thread (data=0x0)
at
/home/distmaker/Distmaker/4.0/build/pike.sol8/pike/src/signal_handler.c:1135
#3 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
#4 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 13
[Switching to thread 13 (Thread 3 )]#0 0xff35d9b8 in _reap_wait ()
from /usr/lib/libthread.so.1
(gdb) bt
#0 0xff35d9b8 in _reap_wait () from /usr/lib/libthread.so.1
#1 0xff35d718 in _reaper () from /usr/lib/libthread.so.1
#2 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
#3 0xff36b024 in _thread_start () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 12
[Switching to thread 12 (Thread 2 (LWP 2))]#0 0xff19ed78 in _signotifywait ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19ed78 in _signotifywait () from /usr/lib/libc.so.1
#1 0xff35e958 in _dynamiclwps () from /usr/lib/libthread.so.1
#2 0xff361c34 in thr_yield () from /usr/lib/libthread.so.1
(gdb) thread 11
[Switching to thread 11 (Thread 1 (LWP 4))]#0 0xff19d5b4 in _poll ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
#1 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
#2 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) thread 2
[Switching to thread 2 (Thread 7 (LWP 1))]#0 0xff19d5b4 in _poll ()
from /usr/lib/libc.so.1
(gdb) bt
#0 0xff19d5b4 in _poll () from /usr/lib/libc.so.1
#1 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
#2 0xff36a7e4 in poll () from /usr/lib/libthread.so.1
Previous frame identical to this frame (corrupt stack?)
(gdb) call gdb_backtraces()
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1 (LWP 4)]
0x000348d0 in opcode_F_ASSIGN_LOCAL (arg1=8)
at
/home/distmaker/tmp/build/pike.srcbuild/../pike-cvs/src/interpret_functions.h:880
880 OPCODE1(F_ASSIGN_LOCAL, "assign local", 0, {
The program being debugged was signaled while in a function called from GDB.
GDB remains in the frame where the signal was received.
To change this behavior use "set unwindonsignal on"
Evaluation of the expression containing the function (gdb_backtraces) will
be abandoned.
(gdb)