[GHC] #11960: GHC parallel build failure during "make"

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Building GHC Unknown/Multiple | failed Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- This keeps happening (in the same place every time): {{{ config.status: executing libtool commands config.status: executing include commands config.status: executing src commands # wc on OS X has spaces in its output, which libffi's Makefile # doesn't expect, so we tweak it to sed them out mv libffi/build/Makefile libffi/build/Makefile.orig sed "s#wc -w#wc -w | sed 's/ //g'#" < libffi/build/Makefile.orig > libffi/build/Makefile "touch" libffi/stamp.ffi.static-shared.configure make: *** [all] Error 2 }}} Adding some sleep in various places seems to work around it, so it appears to be a race of some kind during parallel builds. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ilovezfs): This is still happening repeatably with 8.0.1-rc4/ghc-8.0.0.20160421-src.tar.xz My current workaround is inreplace "libffi/ghc.mk", "$(MAKE) -C libffi/build MAKEFLAGS=", "sync; $(MAKE) -C libffi/build MAKEFLAGS=" which seems to fix the problem reliably. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ilovezfs): Unfortunately, this still happens in the 8.0.1 release version. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by thomie): We're unlikely to put a lot of time in to investigate this bug, since you seem to be the only one running into it, and the current build system is being retired. Could you please try https://github.com/snowleopard/hadrian, and see if you can reproduce the problem. Please provide the following details: * which OS * which command do you run? (`make -j<N>`) * is there anything "weird" about your system. Slow disk? * after the failure, does the build continue successfully if you run `make` again? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ilovezfs): What's weird is the number of make jobs is set to 100 to turn up build systems that have parallelization bugs. CPU: 8-core 64-bit skylake OS X: 10.11.5-x86_64 SSD 32G of RAM. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ilovezfs): I doubt there's any reason for anyone to spend time hunting down the "real" bug. As I mentioned calling sync or adding a little sleep where I said works around it, so that would be a sufficient solution probably if you're switching build systems anyway. It would be great if you could throw that workaround into "libffi/ghc.mk" so I don't have to patch this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make"
-------------------------------------+-------------------------------------
Reporter: ilovezfs | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Build System | Version: 8.0.1-rc3
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Building GHC | Unknown/Multiple
failed | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Thomas Miedema

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.2 Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by thomie): * milestone: => 8.0.2 Comment:
make jobs is set to 100 Nice :)
Ok, the above patch will be in 8.0.2. Thank you for the report and suggested fix. If you have some time, please try out the new build system! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: merge Priority: normal | Milestone: 8.0.2 Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by thomie): * status: new => merge -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: merge Priority: normal | Milestone: 8.0.2 Component: Build System | Version: 8.0.1-rc3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by ilovezfs): Cool, thanks a lot! Yes, I will definitely try it out. If I can get it working, I'll add it to https://github.com/ilovezfs/homebrew-ghc and possibly also to Homebrew core's devel and/or head spec for ghc. Right now I'm preparing the ghc 8.0.1 Homebrew release. Unfortunately, just hit a segfault using my old workaround (https://github.com/Homebrew /homebrew-core/blob/master/Formula/ghc.rb#L53-L72) for the nm bug, which was to put a shim pointing to nm-classic earlier in the PATH than /usr/bin/nm. That old workaround has worked fine for 7.10.3b and 8.0 RCs, so I'm not sure if this is a new bug or not. Now I'm re-trying with "--with-nm=#{`xcrun --find nm-classic`}" to see if that also hits the segfault or not. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:9 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11960: GHC parallel build failure during "make" -------------------------------------+------------------------------------- Reporter: ilovezfs | Owner: Type: bug | Status: closed Priority: normal | Milestone: 8.0.2 Component: Build System | Version: 8.0.1-rc3 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Building GHC | Unknown/Multiple failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: merge => closed * resolution: => fixed Comment: comment:6 merged to `ghc-8.0` as 13ae3e4ae2101f63a6919d983941b09943511310. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11960#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC