[Openmcl-devel] odd ccl hang during gc
Osei Poku
osei.poku at gmail.com
Tue Apr 14 21:55:39 PDT 2009
Hi,
I was running three slime repls (9 threads total) and in each repl I
was running the same long running function on different inputs. After
a few hours of my load being about 2.8, it dropped down to 0.0.
Basically nothing was running, nothing responding etc. All threads
are frozen. As is confirmed by the backtrace in the main thread (see
below), this happened during gc which makes sense since all activity
stops during gc. Not sure what else I can do to revive the process
but I thought it might be useful to report the issue.
This is from CCL version 1.3-RC1-r11885M.
Osei
--- gdb output -----
(gdb) info threads
15 Thread 1076246864 (LWP 14275) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
14 Thread 1078753616 (LWP 14278) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
13 Thread 1081260368 (LWP 14280) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
12 Thread 1083767120 (LWP 14281) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
11 Thread 1086273872 (LWP 14282) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
10 Thread 1088780624 (LWP 14283) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
9 Thread 1091287376 (LWP 24522) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
8 Thread 1093794128 (LWP 24523) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
7 Thread 1096841552 (LWP 24524) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
6 Thread 1099348304 (LWP 24525) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
5 Thread 1101855056 (LWP 28424) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
4 Thread 1104361808 (LWP 28425) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
3 Thread 1106868560 (LWP 28426) 0x00002b9bfca601d8 in ?? () from /
lib/libc.so.6
2 Thread 1109375312 (LWP 28427) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
1 Thread 47948961267808 (LWP 14271) 0x00002b9bfc77149b in
sem_timedwait () from /lib/libpthread.so.0
(gdb) thread
[Current thread is 0 (LWP 14271)]
(gdb) thread 2
[Switching to thread 2 (Thread 1109375312 (LWP 28427))]#0
0x00002b9bfc77149b in sem_timedwait () from /lib/libpthread.so.0
(gdb) thread 3
[Switching to thread 3 (Thread 1106868560 (LWP 28426))]#0
0x00002b9bfca601d8 in ?? () from /lib/libc.so.6
(gdb) bt
#0 0x00002b9bfca601d8 in ?? () from /lib/libc.so.6
#1 0x00002b9bfc9f6662 in ?? () from /lib/libc.so.6
#2 0x00002b9bfc9f56f1 in free () from /lib/libc.so.6
#3 0x000000000041ca69 in destroy_semaphore (s=0x300055b0bc08) at ../
thread_manager.c:724
#4 0x0000000000414caa in reap_gcable_ptrs () at ../gc-common.c:746
#5 0x00000000004157bd in gc (tcr=0x41f977b0, param=<value optimized
out>) at ../gc-common.c:1331
#6 0x00000000004196db in gc_from_tcr (tcr=0x2b9bfccd6980, param=0)
at ../x86-exceptions.c:2786
#7 0x000000000041abe1 in gc_like_from_xp (xp=<value optimized out>,
fun=0x4196b0 <gc_from_tcr>, param=0) at ../x86-exceptions.c:2743
#8 0x000000000041ac3e in gc_from_xp (xp=0x2b9bfccd6980,
param=25576416) at ../x86-exceptions.c:2798
#9 0x000000000041ad67 in allocate_object (xp=0x41f966f0,
bytes_needed=6352096, disp_from_allocptr=6352083, tcr=0x41f977b0)
at ../x86-exceptions.c:145
#10 0x000000000041adce in handle_alloc_trap (xp=0x41f966f0,
tcr=0x41f977b0) at ../x86-exceptions.c:572
#11 0x000000000041b5ce in handle_exception (signum=<value optimized
out>, info=0x41f96aa0, context=0x41f966f0, tcr=0x8000000000000000,
old_valence=-1) at ../x86-exceptions.c:1060
#12 0x000000000041b698 in signal_handler (signum=11, info=0x41f96aa0,
context=0x41f966f0) at ../x86-exceptions.c:1330
#13 <signal handler called>
#14 0x000000000041054a in _SPmisc_alloc () at ../x86-spentry64.s:2840
#15 0x000030004036943c in ?? ()
#16 0x000000000060ecd0 in ?? ()
#17 0x0000000000000000 in ?? ()
(gdb) up
#1 0x00002b9bfc9f6662 in ?? () from /lib/libc.so.6
(gdb) up
#2 0x00002b9bfc9f56f1 in free () from /lib/libc.so.6
(gdb) up
#3 0x000000000041ca69 in destroy_semaphore (s=0x300055b0bc08) at ../
thread_manager.c:724
724 free(*s);
(gdb) list
719 destroy_semaphore(void **s)
720 {
721 if (*s) {
722 #ifdef USE_POSIX_SEMAPHORES
723 sem_destroy((sem_t *)*s);
724 free(*s);
725 #endif
726 #ifdef USE_MACH_SEMAPHORES
727 semaphore_destroy(mach_task_self(),((semaphore_t)(natural)
*s));
728 #endif
(gdb) up
#4 0x0000000000414caa in reap_gcable_ptrs () at ../gc-common.c:746
746 destroy_semaphore((void**)&(x->address));
(gdb) list
741 case xmacptr_flag_rwlock:
742 rwlock_destroy((rwlock *)ptr_from_lispobj(ptr));
743 break;
744
745 case xmacptr_flag_semaphore:
746 destroy_semaphore((void**)&(x->address));
747 break;
748
749 default:
750 if ((flag >= xmacptr_flag_user_first) &&
(gdb)
More information about the Openmcl-devel
mailing list