Re: [Gc] GC_enable_incremental() fails on FreeBSD
ivmai at mail.ru
Tue Jul 17 08:21:10 PDT 2012
7.2 (tagged as stable release) should strictly contain all fixes that 7.3alpha2 has, so I think it's a false feeling that 7.3alpha2 is free of the mentioned bug.
As you report, 7.2 crashes more frequent when 7.2b. There have not been many commits. Could you please point me to the commit making crashes less frequent?
Thank you for your efforts. (I don't really have time and capability debug the reported failures but I try to do my best in applying the bug fixes at least.)
Tue, 17 Jul 2012 13:55:03 +0300 Vitaly Magerya <vmagerya at gmail.com>:
> Ivan Maidanski wrote:
> >> > AFAIK, 7.2c and 7.3alpha2 do not crash, and 7.3 passes all tests.
> > What are the tests of 7.2c that fail?
> The failures I've seen are in 7.2b shipped with Gauche Scheme; gctest
> sometimes (very rarely) segfaults there. Also Gauche sometimes hangs
> on it's threading tests when built with gc 7.2. Both problems go away
> with gc 7.3.
> Here's the backtrace for gctest segfault:
> #0 GC_typed_mark_proc (addr=0x1120000, mark_stack_ptr=0x81b1f0, mark_stack_limit=0x839850, env=9) at typd_mlc.c:395
> #1 0x0000000800863d19 in GC_mark_from (mark_stack_top=Variable "mark_stack_top" is not available.) at mark.c:749
> #2 0x00000008008642b9 in GC_mark_some (cold_gc_frame=Variable "cold_gc_frame" is not available.) at mark.c:401
> #3 0x000000080085badc in GC_stopped_mark (stop_func=0x80085b020 <GC_never_stop_func>) at alloc.c:634
> #4 0x000000080085bf9e in GC_try_to_collect_inner (stop_func=0x80085b020 <GC_never_stop_func>) at alloc.c:457
> #5 0x000000080085c1f9 in GC_collect_or_expand (needed_blocks=1, ignore_off_page=0, retry=0) at alloc.c:1243
> #6 0x000000080085c7e8 in GC_allocobj (gran=3, kind=6) at alloc.c:1330
> #7 0x0000000800861357 in GC_generic_malloc_inner (lb=40, k=6) at malloc.c:121
> #8 0x0000000800861609 in GC_generic_malloc (lb=40, k=6) at malloc.c:161
> #9 0x0000000800869480 in GC_malloc_explicitly_typed (lb=40, d=4611686018427387905) at typd_mlc.c:597
> #10 0x00000000004025b9 in typed_test () at tests/test.c:987
> Note that Gauche configures libgc with --enable-threads=pthreads, and
> it also appends -DDONT_ADD_BYTE_AT_END to CFLAGS. I don't know if this
> is what causes the crash.
> I can try to investigate if the same thing happens with 7.2c if you
> want me to, but seeing that the problem went away in 7.3, it may be
> easier to just use that.
More information about the Gc