Ludovic Courtès skribis: > Apparently a deadlock on ‘all_weak_tables_lock’: I reproduced the deadlock: --8<---------------cut here---------------start------------->8--- (gdb) thread 1 [Switching to thread 1 (Thread 0x7faee3633b80 (LWP 5809))] #0 0x00007faee3bcb0bc in __lll_lock_wait () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 (gdb) bt #0 0x00007faee3bcb0bc in __lll_lock_wait () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 #1 0x00007faee3bc4674 in pthread_mutex_lock () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 #2 0x00007faee3d22a2f in scm_c_make_weak_table (k=, kind=SCM_WEAK_TABLE_KIND_KEY) at weak-table.c:505 #3 0x00007faee139814b in ?? () #4 0x00007faee330fd80 in ?? () #5 0x00007faee3d89860 in ?? () from /gnu/store/s5p2yja08zcg6j56y1wfvnm6nxiyllz1-guile-next-3.0.1/lib/libguile-3.0.so.1 #6 0x00007faee330fd80 in ?? () #7 0x00007faee3cc46eb in scm_jit_enter_mcode (thread=0x7faee330fd80, mcode=0x7faedb2a87f0 "I\211\314I)\304I\203\374\020\017\217", ) at jit.c:5725 #8 0x00007faee3d1ff88 in vm_regular_engine (thread=0x7faed63eab30) at vm-engine.c:374 #9 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7fff3f56ce98, nargs=nargs@entry=1) at vm.c:1600 #10 0x00007faee3c9d1e7 in scm_primitive_eval (exp=) at eval.c:671 #11 0x00007faee3cc63ab in scm_primitive_load (filename=) at load.c:131 #12 0x00007faee3d1f4fc in vm_regular_engine (thread=0x7faee330fd80) at vm-engine.c:972 #13 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7fff3f56d068, nargs=nargs@entry=1) at vm.c:1600 #14 0x00007faee3c9d1e7 in scm_primitive_eval (exp=, exp@entry=((@ (ice-9 control) %) (begin (set! %load-path (cons "." %load-path)) (set! %load-path (cons "." %load-path)) ((@@ (ice-9 command-line) load/lang) "./build-aux/compile-all.scm") (quit)))) at eval.c:671 #15 0x00007faee3c9d243 in scm_eval ( exp=((@ (ice-9 control) %) (begin (set! %load-path (cons "." %load-path)) (set! %load-path (cons "." %load-path)) ((@@ (ice-9 command-line) load/lang) "./build-aux/compile-all.scm") (quit))), module_or_state=module_or_state@entry="#" = {...}) at eval.c:705 #16 0x00007faee3cf6860 in scm_shell (argc=834, argv=0x7fff3f56d6c8) at script.c:357 #17 0x00007faee3cb4bed in invoke_main_func (body_data=0x7fff3f56d570) at init.c:308 #18 0x00007faee3c97e3a in c_body (d=0x7fff3f56d4b0) at continuations.c:430 #19 0x00007faee3d1f4fc in vm_regular_engine (thread=0x7faee330fd80) at vm-engine.c:972 #20 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7fff3f56d270, nargs=nargs@entry=2) at vm.c:1600 #21 0x00007faee3c9c07a in scm_call_2 (proc=, arg1=, arg2=) at eval.c:503 #22 0x00007faee3c9d87a in scm_c_with_exception_handler (type=type@entry=#t, handler=handler@entry=0x7faee3d15d60 , handler_data=handler_data@entry=0x7fff3f56d3e0, thunk=thunk@entry=0x7faee3d15ea0 , thunk_data=thunk_data@entry=0x7fff3f56d3e0) at exceptions.c:170 #23 0x00007faee3d1609d in scm_c_catch (tag=tag@entry=#t, body=body@entry=0x7faee3c97e30 , body_data=body_data@entry=0x7fff3f56d4b0, handler=handler@entry=0x7faee3c980d0 , handler_data=handler_data@entry=0x7fff3f56d4b0, pre_unwind_handler=pre_unwind_handler@entry=0x7faee3c97f30 , pre_unwind_handler_data=0x7faee15e63c0) at throw.c:168 #24 0x00007faee3c983e3 in scm_i_with_continuation_barrier (body=body@entry=0x7faee3c97e30 , body_data=body_data@entry=0x7fff3f56d4b0, handler=handler@entry=0x7faee3c980d0 , handler_data=handler_data@entry=0x7fff3f56d4b0, pre_unwind_handler=pre_unwind_handler@entry=0x7faee3c97f30 , pre_unwind_handler_data=0x7faee15e63c0) at continuations.c:368 #25 0x00007faee3c98475 in scm_c_with_continuation_barrier (func=, data=) at continuations.c:464 #26 0x00007faee3d14b3f in with_guile (base=base@entry=0x7fff3f56d518, data=data@entry=0x7fff3f56d540) at threads.c:645 #27 0x00007faee3bf9a68 in GC_call_with_stack_base (fn=fn@entry=0x7faee3d14af0 , arg=arg@entry=0x7fff3f56d540) at misc.c:1941 #28 0x00007faee3d14e58 in scm_i_with_guile (dynamic_state=, data=data@entry=0x7fff3f56d540, func=func@entry=0x7faee3cb4bd0 ) at threads.c:688 #29 scm_with_guile (func=func@entry=0x7faee3cb4bd0 , data=data@entry=0x7fff3f56d570) at threads.c:694 #30 0x00007faee3cb4d62 in scm_boot_guile (argc=argc@entry=834, argv=argv@entry=0x7fff3f56d6c8, main_func=main_func@entry=0x401240 , closure=closure@entry=0x0) at init.c:291 #31 0x0000000000401100 in main (argc=834, argv=0x7fff3f56d6c8) at guile.c:95 (gdb) thread 5 [Switching to thread 5 (Thread 0x7faee0f93700 (LWP 5815))] #0 0x00007faee3bc7efc in pthread_cond_wait@@GLIBC_2.3.2 () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 (gdb) bt #0 0x00007faee3bc7efc in pthread_cond_wait@@GLIBC_2.3.2 () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 #1 0x00007faee3d15355 in scm_pthread_cond_wait (cond=, mutex=) at threads.c:1605 #2 0x00007faee3d15523 in block_self (queue=((#) #), mutex=mutex@entry=0x7faee1201f80, waittime=waittime@entry=0x0) at threads.c:312 #3 0x00007faee3d15657 in lock_mutex (current_thread=0x7faee330fb40, waittime=0x0, m=0x7faee1201f80, kind=SCM_MUTEX_RECURSIVE) at threads.c:1021 #4 scm_timed_lock_mutex (mutex=#, timeout=) at threads.c:1085 #5 0x00007faee13a663f in ?? () #6 0x00007faee330fb40 in ?? () #7 0x00007faee3d89860 in ?? () from /gnu/store/s5p2yja08zcg6j56y1wfvnm6nxiyllz1-guile-next-3.0.1/lib/libguile-3.0.so.1 #8 0x00007faee330fb40 in ?? () #9 0x00007faee3cc46eb in scm_jit_enter_mcode (thread=0x7faee330fb40, mcode=0x7faee1396410 "I\211\314I)\304I\203\374\020\017\214\272\002") at jit.c:5725 #10 0x00007faee3d1fc99 in vm_regular_engine (thread=0x7faee155ace8) at vm-engine.c:360 #11 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7faee0f92090, nargs=nargs@entry=3) at vm.c:1600 #12 0x00007faee3c9c09f in scm_call_3 (proc=, arg1=arg1@entry=(guile), arg2=, arg3=arg3@entry=#f) at eval.c:510 #13 0x00007faee3ccbf2f in scm_maybe_resolve_module (name=name@entry=(guile)) at modules.c:195 #14 0x00007faee3cb8898 in resolve_module (name=(guile), public_p=) at intrinsics.c:317 #15 0x00007faee3d1ef94 in vm_regular_engine (thread=0x7faee330fb40) at vm-engine.c:1583 #16 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7faee0f92278, nargs=nargs@entry=1) at vm.c:1600 #17 0x00007faee3c9c058 in scm_call_1 (proc=, arg1=) at eval.c:496 #18 0x00007faee3d1f4fc in vm_regular_engine (thread=0x7faee330fb40) at vm-engine.c:972 #19 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7faee0f92420, nargs=nargs@entry=4) at vm.c:1600 #20 0x00007faee3c9c0d4 in scm_call_4 (proc=, arg1=arg1@entry="#" = {...}, arg2=arg2@entry=# 7faee15e63c0>, arg3=arg3@entry=#:count, arg4=arg4@entry=20) at eval.c:517 #21 0x00007faee3c8f5f9 in display_backtrace_body (a=) at backtrace.c:239 #22 0x00007faee3c9d87a in scm_c_with_exception_handler (type=type@entry=#t, handler=handler@entry=0x7faee3d15d60 , handler_data=handler_data@entry=0x7faee0f925d0, thunk=thunk@entry=0x7faee3d15ea0 , thunk_data=thunk_data@entry=0x7faee0f925d0) at exceptions.c:170 #23 0x00007faee3d1609d in scm_c_catch (tag=tag@entry=#t, body=body@entry=0x7faee3c8f4d0 , body_data=body_data@entry=0x7faee0f92640, handler=handler@entry=0x7faee3c8f8b0 , handler_data=handler_data@entry=0x7faee15e63c0, pre_unwind_handler=pre_unwind_handler@entry=0x0, pre_unwind_handler_data=0x0) at throw.c:168 #24 0x00007faee3d160be in scm_internal_catch (tag=tag@entry=#t, body=body@entry=0x7faee3c8f4d0 , body_data=body_data@entry=0x7faee0f92640, handler=handler@entry=0x7faee3c8f8b0 , handler_data=handler_data@entry=0x7faee15e63c0) at throw.c:177 #25 0x00007faee3c8f4c5 in scm_display_backtrace_with_highlights (stack=stack@entry="#" = {...}, port=port@entry=# 7faee15e63c0>, first=first@entry=#f, depth=depth@entry=#f, highlights=highlights@entry=()) at backtrace.c:277 #26 0x00007faee3c9801f in print_exception_and_backtrace ( args=0x7faee11f7f50, tag=wrong-type-arg, port=# 7faee15e63c0>) at continuations.c:409 #27 pre_unwind_handler (error_port=0x7faee15e63c0, tag=wrong-type-arg, args=0x7faee11f7f50) at continuations.c:453 #28 0x00007faee3d15e1b in catch_pre_unwind_handler (data=0x7faee0f92d80, exn=0x7faee11f7980) at throw.c:135 #29 0x00007faee3d1f4fc in vm_regular_engine (thread=0x7faee330fb40) at vm-engine.c:972 #30 0x00007faee3d20935 in scm_call_n (proc=proc@entry=#, argv=, nargs=5) at vm.c:1600 #31 0x00007faee3c9c3d4 in scm_apply_0 (proc=#, args=()) at eval.c:603 #32 0x00007faee3c9d07d in scm_apply_1 (proc=, arg1=arg1@entry=wrong-type-arg, args=args@entry=0x7faee10d5610) at eval.c:609 #33 0x00007faee3d16259 in scm_throw (key=key@entry=wrong-type-arg, args=0x7faee10d5610) at throw.c:262 #34 0x00007faee3d163a9 in scm_ithrow (key=key@entry=wrong-type-arg, args=, no_return=no_return@entry=1) at throw.c:457 #35 0x00007faee3c9a585 in scm_error_scm (key=key@entry=wrong-type-arg, subr=, message=message@entry="Wrong type argument in position ~A (expecting ~A): ~S", args=args@entry=0x7faee10d59a0, data=data@entry=0x7faee10d5ab0) at error.c:90 #36 0x00007faee3c9a61f in scm_error (key=wrong-type-arg, subr=subr@entry=0x7faee3d4bf60 "weak-vector-ref", message=message@entry=0x7faee3d3d490 "Wrong type argument in position ~A (expecting ~A): ~S", args=0x7faee10d59a0, rest=rest@entry=0x7faee10d5ab0) at error.c:62 #37 0x00007faee3c9a9e0 in scm_wrong_type_arg_msg ( subr=subr@entry=0x7faee3d4bf60 "weak-vector-ref", pos=pos@entry=1, bad_value=0x7faec8cc8980, szMessage=szMessage@entry=0x7faee3d4bee0 "weak vector") at error.c:282 #38 0x00007faee3d23716 in scm_c_weak_vector_ref (wv=, k=k@entry=0) at weak-vector.c:193 #39 0x00007faee3d22838 in scm_i_weak_car ( pair=0x7faec7c7d7e0) at weak-list.h:39 #40 scm_i_visit_weak_list (list_loc=0x7faee3d8a868 , visit=) at weak-list.h:49 #41 vacuum_all_weak_tables () at weak-table.c:494 #42 0x00007faee3ca5f2e in async_gc_finalizer (ptr=0x7faee3312ea0, data=0x0) at finalizers.c:316 #43 0x00007faee3bf26ef in GC_invoke_finalizers () at finalize.c:1276 #44 0x00007faee3ca63c9 in scm_run_finalizers () at finalizers.c:398 #45 0x00007faee3ca643d in finalization_thread_proc (unused=) at finalizers.c:233 #46 0x00007faee3c97e3a in c_body (d=0x7faee0f92e50) at continuations.c:430 #47 0x00007faee3d1f4fc in vm_regular_engine (thread=0x7faee330fb40) at vm-engine.c:972 #48 0x00007faee3d20935 in scm_call_n (proc=, argv=argv@entry=0x7faee0f92c10, nargs=nargs@entry=2) at vm.c:1600 #49 0x00007faee3c9c07a in scm_call_2 (proc=, arg1=, arg2=) at eval.c:503 #50 0x00007faee3c9d87a in scm_c_with_exception_handler (type=type@entry=#t, handler=handler@entry=0x7faee3d15d60 , handler_data=handler_data@entry=0x7faee0f92d80, thunk=thunk@entry=0x7faee3d15ea0 , thunk_data=thunk_data@entry=0x7faee0f92d80) at exceptions.c:170 #51 0x00007faee3d1609d in scm_c_catch (tag=tag@entry=#t, body=body@entry=0x7faee3c97e30 , body_data=body_data@entry=0x7faee0f92e50, handler=handler@entry=0x7faee3c980d0 , handler_data=handler_data@entry=0x7faee0f92e50, pre_unwind_handler=pre_unwind_handler@entry=0x7faee3c97f30 , pre_unwind_handler_data=0x7faee15e63c0) at throw.c:168 #52 0x00007faee3c983e3 in scm_i_with_continuation_barrier (body=body@entry=0x7faee3c97e30 , body_data=body_data@entry=0x7faee0f92e50, handler=handler@entry=0x7faee3c980d0 , handler_data=handler_data@entry=0x7faee0f92e50, pre_unwind_handler=pre_unwind_handler@entry=0x7faee3c97f30 , pre_unwind_handler_data=0x7faee15e63c0) at continuations.c:368 #53 0x00007faee3c98475 in scm_c_with_continuation_barrier (func=, data=) at continuations.c:464 #54 0x00007faee3d14b3f in with_guile (base=base@entry=0x7faee0f92eb8, data=data@entry=0x7faee0f92ee0) at threads.c:645 #55 0x00007faee3bf9a68 in GC_call_with_stack_base (fn=fn@entry=0x7faee3d14af0 , arg=arg@entry=0x7faee0f92ee0) at misc.c:1941 #56 0x00007faee3d14e58 in scm_i_with_guile (dynamic_state=, data=, func=) at threads.c:688 #57 scm_with_guile (func=, data=) at threads.c:694 #58 0x00007faee3bc2015 in start_thread () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libpthread.so.0 #59 0x00007faee372891f in clone () from /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libc.so.6 --8<---------------cut here---------------end--------------->8--- It stems from the bug described in , this time on x86_64. Ludo’.