[GHC] #9065: Segfault in a memory-heavy program
GHC
ghc-devs at haskell.org
Fri May 2 19:38:57 UTC 2014
#9065: Segfault in a memory-heavy program
----------------------------------+----------------------------------
Reporter: rotsor | Owner: simonmar
Type: bug | Status: new
Priority: normal | Milestone:
Component: Runtime System | Version: 7.6.3
Keywords: | Operating System: Linux
Architecture: x86_64 (amd64) | Type of failure: Runtime crash
Difficulty: Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: |
----------------------------------+----------------------------------
I've got a program compiled with GHC 7.6.3 crashing with "Segmentation
fault". It does not crash with GHC 7.8.2 so the bug might have been fixed
already.
This is the backtrace I'm getting from gdb:
{{{
#0 0x00000000004a0450 in alloc_mega_group ()
#1 0x00000000004a0930 in allocGroup.part.1 ()
#2 0x00000000004c3c00 in alloc_todo_block ()
#3 0x00000000004c3d73 in todo_block_full ()
#4 0x0000000000403df9 in evacuate ()
#5 0x00000000004051e4 in scavenge_block ()
#6 0x00000000004bf785 in scavenge_loop ()
#7 0x00000000004a16c5 in GarbageCollect ()
#8 0x0000000000499d6f in scheduleDoGC.isra.21 ()
#9 0x000000000049a81d in scheduleWaitThread ()
#10 0x000000000049e1be in real_main ()
#11 0x000000000049e2bc in hs_main ()
#12 0x0000000000418a8b in main ()
}}}
The problem only triggers when I run the program on large input values: it
uses 7Gb of memory and dies after 7 minutes of runtime.
The version compiled with 7.8.2 exhibits similar memory usage pattern, but
successfully completes within 15 minutes.
Compiler command line I use:
{{{
ghc -O2 -rtsopts eu468
}}}
RTS command line:
{{{
./eu468 +RTS -K1000000000
}}}
The program in question is eu468.hs at
https://github.com/Rotsor/euler.git.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9065>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list