segfault in RTS - can anyone help me tracking this bug down?
Reid Barton
rwbarton at gmail.com
Wed May 28 17:43:06 UTC 2014
There are a couple of recent GC-related bug fixes (#9045 and #9001). Before
trying to track this down any further I suggest you try using the tip of
the ghc-7.8 branch with commit fc0ed8a730 cherry-picked on top.
Regards,
Reid Barton
On Wed, May 28, 2014 at 6:04 AM, Ömer Sinan Ağacan <omeragacan at gmail.com>wrote:
> Hi all,
>
> I'm suffering from a RTS bug(probably GC related) that makes making
> progress in my GSoC project impossible. I have very limited knowledge
> of GHC internals and I currently have no idea how to produce a minimal
> program that demonstrates the bug. I wrote how to reproduce it and gdb
> backtrace when segfault happens in a short blog post:
> http://osa1.net/posts/2014-05-27-worst-bug.html . As also written in
> the blog post, changing generation count of generational GC will makes
> the bug disappear in some cases, but it's not a solution.
>
> I also pasted backtrace output below for those who don't want to click
> links.
>
> GHC version used is 7.8.2.
>
> If anyone give me some pointers to understand what's going wrong or
> how can I produce a simple program that demonstrates the bug, I'd like
> to work on that. I'm basically stuck and I can't make any progress
> with this bug.
>
> Thanks,
> Ömer
>
> [ 5 of 202] Compiling GHC.Unicode[boot] ( GHC/Unicode.hs-boot,
> dist/build/GHC/Unicode.js_p_o-boot )
> Detaching after fork from child process 3382.
> [ 6 of 202] Compiling GHC.IO[boot] ( GHC/IO.hs-boot,
> dist/build/GHC/IO.js_p_o-boot )
> Detaching after fork from child process 3383.
> [ 7 of 202] Compiling GHC.Exception[boot] ( GHC/Exception.lhs-boot,
> dist/build/GHC/Exception.js_p_o-boot )
> Detaching after fork from child process 3384.
> [ 51 of 202] Compiling GHC.Fingerprint[boot] (
> GHC/Fingerprint.hs-boot, dist/build/GHC/Fingerprint.js_p_o-boot )
> Detaching after fork from child process 3385.
> [ 55 of 202] Compiling GHC.IO.Exception[boot] (
> GHC/IO/Exception.hs-boot, dist/build/GHC/IO/Exception.js_p_o-boot )
> Detaching after fork from child process 3386.
> [ 75 of 202] Compiling Foreign.C.Types ( Foreign/C/Types.hs,
> dist/build/Foreign/C/Types.js_p_o )
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x000000000425d5c4 in LOOKS_LIKE_CLOSURE_PTR (p=0x0) at
> includes/rts/storage/ClosureMacros.h:258
> 258 includes/rts/storage/ClosureMacros.h: No such file or directory.
> (gdb) bt
> #0 0x000000000425d5c4 in LOOKS_LIKE_CLOSURE_PTR (p=0x0) at
> includes/rts/storage/ClosureMacros.h:258
> #1 0x000000000425f776 in scavenge_mutable_list1 (bd=0x7fffe5c02a00,
> gen=0x4d1fd48) at rts/sm/Scav.c:1400
> #2 0x000000000425fa13 in scavenge_capability_mut_Lists1
> (cap=0x4cfe5c0 <MainCapability>) at rts/sm/Scav.c:1493
> #3 0x0000000004256b66 in GarbageCollect (collect_gen=0,
> do_heap_census=rtsFalse, gc_type=2,
> cap=0x4cfe5c0 <MainCapability>) at rts/sm/GC.c:342
> #4 0x00000000042454a3 in scheduleDoGC (pcap=0x7fffffffc198,
> task=0x4d32b60, force_major=rtsFalse)
> at rts/Schedule.c:1650
> #5 0x0000000004243de4 in schedule (initialCapability=0x4cfe5c0
> <MainCapability>, task=0x4d32b60)
> at rts/Schedule.c:553
> #6 0x0000000004246436 in scheduleWaitThread (tso=0x7ffff6708d60,
> ret=0x0, pcap=0x7fffffffc2c0) at rts/Schedule.c:2346
> #7 0x000000000423e9b4 in rts_evalLazyIO (cap=0x7fffffffc2c0,
> p=0x477f850, ret=0x0) at rts/RtsAPI.c:500
> #8 0x0000000004241666 in real_main () at rts/RtsMain.c:63
> #9 0x0000000004241759 in hs_main (argc=237, argv=0x7fffffffc448,
> main_closure=0x477f850, rts_config=...)
> at rts/RtsMain.c:114
> #10 0x0000000000408ea7 in main ()
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140528/eb0d1f33/attachment.html>
More information about the ghc-devs
mailing list