[GHC] #13434: hs_try_putmvar003 is timing out / segfaulting

GHC ghc-devs at haskell.org
Sun Mar 26 22:44:30 UTC 2017


#13434: hs_try_putmvar003 is timing out / segfaulting
-------------------------------------+-------------------------------------
        Reporter:  ezyang            |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Runtime System    |              Version:  8.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  Runtime crash     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by ezyang):

 I was able to reproduce on a 64-bit Ubuntu machine. Here were my steps:

 1. Download ghc-head from hvr's PPA
 https://launchpad.net/~hvr/+archive/ubuntu/ghc
 2. Build the test case: `ghc-head -c hs_try_putmvar003.hs` and then ` ghc-
 head hs_try_putmvar003_c.c hs_try_putmvar003.o -debug`
 3. Repeatedly run `./a.out 1 1 1 1 +RTS -DS` until it hangs or segfaults.
 In 25 runs, 4 failed in various different ways (assert fail, segfault, or
 deadlock.)

 It's a bit annoying because the C stub uses pthreads whether or not the
 threaded runtime is linked, so I don't have something that's
 deterministic.

 Scanning over the code, I didn't see anything obviously wrong, so I'm
 going to do some bisecting and see if this always failed or if it's a
 regression introduced by an unrelated change (levity polymorphism causing
 the unsafeCoerce to be bad, maybe?)

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


More information about the ghc-tickets mailing list