guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Deadlock with GC 7.2alpha6 on master


From: Ludovic Courtès
Subject: Deadlock with GC 7.2alpha6 on master
Date: Wed, 22 May 2013 15:08:18 +0200
User-agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3 (gnu/linux)

Hello!

On a fresh build of ‘master’ (.go not built yet), ../meta/guile -c 1
hangs like this:

--8<---------------cut here---------------start------------->8---
(gdb) bt
#0  0x00007ffff75d922c in __lll_lock_wait () from 
/home/ludo/.guix-profile/lib/libpthread.so.0
#1  0x00007ffff75d503c in _L_lock_974 () from 
/home/ludo/.guix-profile/lib/libpthread.so.0
#2  0x00007ffff75d4e8b in pthread_mutex_lock () from 
/home/ludo/.guix-profile/lib/libpthread.so.0
#3  0x00007ffff77ffda5 in GC_get_heap_size () from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#4  0x00007ffff7abf5e9 in adjust_gc_frequency (hook_data=<optimized out>, 
fn_data=<optimized out>, data=<optimized out>)
    at gc.c:826
#5  0x00007ffff7acb57c in scm_c_hook_run (hook=0x7ffff7dd5140 
<scm_before_gc_c_hook>, data=0x0) at hooks.c:103
#6  0x00007ffff77f5a9c in GC_try_to_collect_inner ()
   from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#7  0x00007ffff77f6789 in GC_collect_or_expand () from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#8  0x00007ffff77f68ee in GC_allocobj () from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#9  0x00007ffff77fb7df in GC_generic_malloc_inner ()
   from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#10 0x00007ffff77fc754 in GC_generic_malloc_many ()
   from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#11 0x00007ffff78059ce in GC_malloc () from 
/nix/store/qg8hngsnh4d4zxwyky80v83nxwi0wq56-libgc-7.2alpha6/lib/libgc.so.1
#12 0x00007ffff7b20474 in scm_words (n_words=7112354, car=7112353) at 
../libguile/gc.h:263
#13 scm_i_alloc_struct (vtable_data=0x6c86a0, address@hidden) at struct.c:442
#14 0x00007ffff7b20544 in scm_c_make_structv (address@hidden, n_tail=0, 
address@hidden, 
    address@hidden) at struct.c:484
#15 0x00007ffff7b2065d in scm_make_struct (vtable=0x6c8690, 
tail_array_size=0x2, init=0x304) at struct.c:559
--8<---------------cut here---------------end--------------->8---

Could it be that GC_get_heap_size doesn’t attempt to acquire the GC lock
with newer versions of libgc, or something like that?  Which libgc
version do people use?

TIA,
Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]