[GHC] #10174: AArch64 : ghc-stage2 segfaults compiling libraries/parallel

GHC ghc-devs at haskell.org
Mon Mar 23 04:50:35 UTC 2015


#10174: AArch64 : ghc-stage2 segfaults compiling libraries/parallel
----------------------------------------+----------------------------------
        Reporter:  erikd                |                   Owner:
            Type:  bug                  |                  Status:  new
        Priority:  normal               |               Milestone:  7.12.1
       Component:  Compiler             |                 Version:  7.11
      Resolution:                       |                Keywords:
Operating System:  Unknown/Multiple     |            Architecture:  aarch64
 Type of failure:  Building GHC failed  |               Test Case:
      Blocked By:                       |                Blocking:
 Related Tickets:                       |  Differential Revisions:
----------------------------------------+----------------------------------

Comment (by erikd):

 Running the above `ghc-stage2` command under gdb and grabbing the
 backtrace results in:

 {{{
 Program received signal SIGSEGV, Segmentation fault.
 0x00290108d000a388 in ?? ()
 (gdb) bt
 X0  0x00290108d000a388 in ?? ()
 X1  0x0000000002b7b940 in StgRun (f=<optimized out>, f at entry=0x2b8a788
 <stg_returnToStackTop$def>, basereg=<optimized out>) at rts/StgCRun.c:81
 X2  0x0000000002b7e114 in schedule
 (initialCapability=initialCapability at entry=0x3975a40 <MainCapability>,
 task=task at entry=0x39a7470) at rts/Schedule.c:463
 X3  0x0000000002b7ef5c in scheduleWaitThread (tso=0x7fb7c0b388,
 ret=ret at entry=0x0, pcap=pcap at entry=0x7ffffff4d8) at rts/Schedule.c:2380
 X4  0x0000000002b75698 in rts_evalLazyIO (cap=cap at entry=0x7ffffff4d8,
 p=p at entry=0x2f79bc0 <ZCMain_main_closure>, ret=ret at entry=0x0) at
 rts/RtsAPI.c:500
 X5  0x0000000002b80428 in hs_main (argc=49, argv=0x7ffffff688,
 main_closure=0x2f79bc0 <ZCMain_main_closure>, rts_config=...) at
 rts/RtsMain.c:64
 X6  0x000000000042ea9c in main ()
 }}}

 which suggests something going awry in `StgRun`.

 In addition, running the above command under gdb showed that 3 extra
 threads were being started whereas, if `ghc-stage2` is replaced with `ghc-
 stage1` and run, only a single thread (the initial host thread) is
 started. This on the other hand suggests a threading problem.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10174#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list