Semantics of MVars and IORefs?

Peter Trommler trp at bluewin.ch
Mon Oct 24 09:16:08 UTC 2016


Hi Iavor and Ryan,

One ticket on memory model issues is #12469.

At openSUSE we see several build failures only now because we recently switched to parallel Cabal builds.
A compiled Cabal Setup that is called with -j<n> sometimes segfaults on PowerPC. Actually, if I
try building package OpenGL locally on my PowerMac Setup -j<n> almost always fails with a segfault if n is
the number of cores or higher. See also #12537.

When building on Open(SUSE) Build Service the build fails only sometimes. We build all of LTS Haskell and a
random selection of around 40 packages fail, most of them with segfaults in Setup but some with GHC panics.
#12469 has examples.

Peter

> On 21.10.2016, at 19:56, Ryan Yates <fryguybob at gmail.com> wrote:
> 
> Hi Iavor,
> 
> You might be interested in what Edward has written about this:
> 
> http://blog.ezyang.com/2014/01/so-you-want-to-add-a-new-concurrency-primitive-to-ghc/
> 
> I would say when we do have a memory model for GHC the program you gave will almost certainly be correct.  MVar operations should be full synchronization operations.  There are some bugs on relaxed systems with initialization that I think are being addressed.  I can't find the tickets at the moment.
> 
> Ryan



More information about the ghc-devs mailing list