
#15449: Nondeterministic Failure on aarch64 with -jn, n > 1 -------------------------------------+------------------------------------- Reporter: tmobile | Owner: tmobile Type: bug | Status: new Priority: normal | Milestone: 8.10.1 Component: Compiler | Version: 8.4.3 Resolution: | Keywords: Operating System: Linux | Architecture: aarch64 Type of failure: Compile-time | Test Case: crash or panic | Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by tmobile): I've spent a bunch of time trying to understand what's going on here. I don't actually think that the Cmm to LLVM pass is to blame. The faults seem to always occur in the std_blackhole function. I don't understand exactly how blackholes work, I think it's something like: I find a pointer to a closure, at the other end I might find: - a value, I'm done. - a closure, I evaluate that. - a blackhole, another HEC has beat me to this closure, so I'll wait for them to finish. Perhaps there's simply a barrier missing from std_blackhole. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15449#comment:20 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler