Bug 989593

Summary: [ppc64] [s390x] ghc-7.6.3 build with ghc-7.6.3 doesn't complete
Product: [Fedora] Fedora Reporter: Karsten Hopp <karsten>
Component: ghcAssignee: Jens Petersen <petersen>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: 20CC: bos, dan, gustavold, haskell-devel, petersen, spoyarek
Target Milestone: ---   
Target Release: ---   
Hardware: ppc64   
OS: Linux   
Whiteboard:
Fixed In Version: ghc-7.6.3-18.2.fc20 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-10 06:32:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 467765    
Attachments:
Description Flags
ghc.spec-verbose-build.patch
none
Fix infinite loop on 64 bits big endian platforms none

Description Karsten Hopp 2013-07-29 15:35:29 UTC
Description of problem:
Builds of ghc-7.6.3-13.fc20 on ppc64 get stuck at this stage:
  HSC2HS compiler/stage1/build/Fingerprint.hs
  HSC2HS libraries/hpc/dist-boot/build/Trace/Hpc/Reflect.hs
"rm" -f compiler/stage1/build/.depend-v.haskell.tmp  
"/usr/bin/ghc" -M -dep-makefile compiler/stage1/build/.depend-v.haskell.tmp  -include-pkg-deps -H32m -O -package-db libraries/bootstrapping.conf -package-name ghc-7.6.3 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage1/build -icompiler/stage1/build/autogen -Icompiler/stage1/build -Icompiler/stage1/build/autogen -Icompiler/stage1 -Icompiler/. -Icompiler/parser -Icompiler/utils -optP-include -optPcompiler/stage1/build/autogen/cabal_macros.h -package Cabal-1.16.0 -package array-0.4.0.1 -package base-4.6.0.1 -package bin-package-db-0.0.0.0 -package bytestring-0.10.0.2 -package containers-0.5.0.0 -package directory-1.2.0.1 -package filepath-1.3.0.1 -package hoopl-3.9.0.0 -package hpc-0.6.0.0 -package process-1.1.0.2 -package time-1.4.0.1 -package unix-2.6.0.1 -Wall -fno-warn-name-shadowing -fno-warn-orphans -XHaskell98 -XNondecreasingIndentation -XCPP -XMagicHash -XUnboxedTuples -XPatternGuards -XForeignFunctionInterface -XEmptyDataDecls -XTypeSynonymInstances -XMultiParamTypeClasses -XFlexibleInstances -XRankNTypes -XScopedTypeVariables -XDeriveDataTypeable -XBangPatterns -DNO_REGS -DSTAGE=1 -no-user-package-db -rtsopts -odir compiler/stage1/build -hidir compiler/stage1/build -stubdir compiler/stage1/build -hisuf hi -osuf o -hcsuf hc  compiler/basicTypes/Avail.hs  compiler/basicTypes/BasicTypes.lhs  compiler/basicTypes/DataCon.lhs  compiler/basicTypes/Demand.lhs  compiler/utils/Exception.hs  compiler/main/GhcMonad.hs  compiler/basicTypes/Id.lhs  compiler/basicTypes/IdInfo.lhs  compiler/basicTypes/Literal.lhs  compiler/llvmGen/Llvm.hs  compiler/llvmGen/Llvm/AbsSyn.hs  compiler/llvmGen/Llvm/PpLlvm.hs  compiler/llvmGen/Llvm/Types.hs  compiler/llvmGen/LlvmCodeGen.hs  compiler/llvmGen/LlvmCodeGen/Base.hs  compiler/llvmGen/LlvmCodeGen/CodeGen.hs  compiler/llvmGen/LlvmCodeGen/Data.hs  compiler/llvmGen/LlvmCodeGen/Ppr.hs  compiler/llvmGen/LlvmCodeGen/Regs.hs  compiler/llvmGen/LlvmMangler.hs  compiler/basicTypes/MkId.lhs  compiler/basicTypes/Module.lhs  compiler/basicTypes/Name.lhs  compiler/basicTypes/NameEnv.lhs  compiler/basicTypes/NameSet.lhs  compiler/basicTypes/OccName.lhs  compiler/basicTypes/RdrName.lhs  compiler/basicTypes/SrcLoc.lhs  compiler/basicTypes/UniqSupply.lhs  compiler/basicTypes/Unique.lhs  compiler/basicTypes/Var.lhs  compiler/basicTypes/VarEnv.lhs  compiler/basicTypes/VarSet.lhs  compiler/cmm/BlockId.hs  compiler/cmm/CLabel.hs  compiler/cmm/Cmm.hs  compiler/cmm/CmmBuildInfoTables.hs  compiler/cmm/CmmPipeline.hs  compiler/cmm/CmmCallConv.hs  compiler/cmm/CmmCommonBlockElim.hs  compiler/cmm/CmmContFlowOpt.hs  compiler/cmm/CmmCvt.hs  compiler/cmm/CmmExpr.hs  compiler/cmm/CmmInfo.hs  compiler/cmm/CmmLex.hs  compiler/cmm/CmmLint.hs  compiler/cmm/CmmLive.hs  compiler/cmm/CmmMachOp.hs  compiler/cmm/CmmNode.hs  compiler/cmm/CmmOpt.hs  compiler/cmm/CmmParse.hs  compiler/cmm/CmmProcPoint.hs  compiler/cmm/CmmRewriteAssignments.hs  compiler/cmm/CmmSink.hs  compiler/cmm/CmmType.hs  compiler/cmm/CmmUtils.hs  compiler/cmm/CmmLayoutStack.hs  compiler/cmm/MkGraph.hs  compiler/cmm/OldCmm.hs  compiler/cmm/OldCmmLint.hs  compiler/cmm/OldCmmUtils.hs  compiler/cmm/OldPprCmm.hs  compiler/nativeGen/PprBase.hs  compiler/cmm/PprC.hs  compiler/cmm/PprCmm.hs  compiler/cmm/PprCmmDecl.hs  compiler/cmm/PprCmmExpr.hs  compiler/cmm/Bitmap.hs  compiler/codeGen/CgBindery.lhs  compiler/codeGen/CgCallConv.hs  compiler/codeGen/CgCase.lhs  compiler/codeGen/CgClosure.lhs  compiler/codeGen/CgCon.lhs  compiler/codeGen/CgExpr.lhs  compiler/codeGen/CgExtCode.hs  compiler/codeGen/CgForeignCall.hs  compiler/codeGen/CgHeapery.lhs  compiler/codeGen/CgHpc.hs  compiler/codeGen/CgInfoTbls.hs  compiler/codeGen/CgLetNoEscape.lhs  compiler/codeGen/CgMonad.lhs  compiler/codeGen/CgParallel.hs  compiler/codeGen/CgPrimOp.hs  compiler/codeGen/CgProf.hs  compiler/codeGen/CgStackery.lhs  compiler/codeGen/CgTailCall.lhs  compiler/codeGen/CgTicky.hs  compiler/codeGen/CgUtils.hs  compiler/codeGen/StgCmm.hs  compiler/codeGen/StgCmmBind.hs  compiler/codeGen/StgCmmClosure.hs  compiler/codeGen/StgCmmCon.hs  compiler/codeGen/StgCmmEnv.hs  compiler/codeGen/StgCmmExpr.hs  compiler/codeGen/StgCmmForeign.hs  compiler/codeGen/StgCmmGran.hs  compiler/codeGen/StgCmmHeap.hs  compiler/codeGen/StgCmmHpc.hs  compiler/codeGen/StgCmmLayout.hs  compiler/codeGen/StgCmmMonad.hs  compiler/codeGen/StgCmmPrim.hs  compiler/codeGen/StgCmmProf.hs  compiler/codeGen/StgCmmTicky.hs  compiler/codeGen/StgCmmUtils.hs  compiler/codeGen/ClosureInfo.lhs  compiler/codeGen/CodeGen.lhs  compiler/cmm/SMRep.lhs  compiler/coreSyn/CoreArity.lhs  compiler/coreSyn/CoreFVs.lhs  compiler/coreSyn/CoreLint.lhs  compiler/coreSyn/CorePrep.lhs  compiler/coreSyn/CoreSubst.lhs  compiler/coreSyn/CoreSyn.lhs  compiler/coreSyn/TrieMap.lhs  compiler/coreSyn/CoreTidy.lhs  compiler/coreSyn/CoreUnfold.lhs  compiler/coreSyn/CoreUtils.lhs  compiler/coreSyn/ExternalCore.lhs  compiler/coreSyn/MkCore.lhs  compiler/coreSyn/MkExternalCore.lhs  compiler/coreSyn/PprCore.lhs  compiler/coreSyn/PprExternalCore.lhs  compiler/deSugar/Check.lhs  compiler/deSugar/Coverage.lhs  compiler/deSugar/Desugar.lhs  compiler/deSugar/DsArrows.lhs  compiler/deSugar/DsBinds.lhs  compiler/deSugar/DsCCall.lhs  compiler/deSugar/DsExpr.lhs  compiler/deSugar/DsForeign.lhs  compiler/deSugar/DsGRHSs.lhs  compiler/deSugar/DsListComp.lhs  compiler/deSugar/DsMonad.lhs  compiler/deSugar/DsUtils.lhs  compiler/deSugar/Match.lhs  compiler/deSugar/MatchCon.lhs  compiler/deSugar/MatchLit.lhs  compiler/hsSyn/HsBinds.lhs  compiler/hsSyn/HsDecls.lhs  compiler/hsSyn/HsDoc.hs  compiler/hsSyn/HsExpr.lhs  compiler/hsSyn/HsImpExp.lhs  compiler/hsSyn/HsLit.lhs  compiler/hsSyn/HsPat.lhs  compiler/hsSyn/HsSyn.lhs  compiler/hsSyn/HsTypes.lhs  compiler/hsSyn/HsUtils.lhs  compiler/iface/BinIface.hs  compiler/iface/BuildTyCl.lhs  compiler/iface/IfaceEnv.lhs  compiler/iface/IfaceSyn.lhs  compiler/iface/IfaceType.lhs  compiler/iface/LoadIface.lhs  compiler/iface/MkIface.lhs  compiler/iface/TcIface.lhs  compiler/iface/FlagChecker.hs  compiler/main/Annotations.hs  compiler/main/BreakArray.hs  compiler/main/CmdLineParser.hs  compiler/main/CodeOutput.lhs  compiler/stage1/build/Config.hs  compiler/main/Constants.lhs  compiler/main/DriverMkDepend.hs  compiler/main/DriverPhases.hs  compiler/main/DriverPipeline.hs  compiler/main/DynFlags.hs  compiler/main/ErrUtils.lhs  compiler/main/Finder.lhs  compiler/main/GHC.hs  compiler/main/GhcMake.hs  compiler/main/GhcPlugins.hs  compiler/main/DynamicLoading.hs  compiler/main/HeaderInfo.hs  compiler/main/HscMain.hs  compiler/main/HscStats.hs  compiler/main/HscTypes.lhs  compiler/main/InteractiveEval.hs  compiler/main/PackageConfig.hs  compiler/main/Packages.lhs  compiler/main/PprTyThing.hs  compiler/main/StaticFlags.hs  compiler/main/StaticFlagParser.hs  compiler/main/SysTools.lhs  compiler/main/TidyPgm.lhs  compiler/parser/Ctype.lhs  compiler/parser/HaddockUtils.hs  compiler/parser/LexCore.hs  compiler/parser/Lexer.hs  compiler/types/OptCoercion.lhs  compiler/parser/Parser.hs  compiler/parser/ParserCore.hs  compiler/parser/ParserCoreUtils.hs  compiler/parser/RdrHsSyn.lhs  compiler/prelude/ForeignCall.lhs  compiler/prelude/PrelInfo.lhs  compiler/prelude/PrelNames.lhs  compiler/prelude/PrelRules.lhs  compiler/prelude/PrimOp.lhs  compiler/prelude/TysPrim.lhs  compiler/prelude/TysWiredIn.lhs  compiler/profiling/CostCentre.lhs  compiler/profiling/ProfInit.hs  compiler/profiling/SCCfinal.lhs  compiler/rename/RnBinds.lhs  compiler/rename/RnEnv.lhs  compiler/rename/RnExpr.lhs  compiler/rename/RnHsDoc.hs  compiler/rename/RnNames.lhs  compiler/rename/RnPat.lhs  compiler/rename/RnSource.lhs  compiler/rename/RnTypes.lhs  compiler/simplCore/CoreMonad.lhs  compiler/simplCore/CSE.lhs  compiler/simplCore/FloatIn.lhs  compiler/simplCore/FloatOut.lhs  compiler/simplCore/LiberateCase.lhs  compiler/simplCore/OccurAnal.lhs  compiler/simplCore/SAT.lhs  compiler/simplCore/SetLevels.lhs  compiler/simplCore/SimplCore.lhs  compiler/simplCore/SimplEnv.lhs  compiler/simplCore/SimplMonad.lhs  compiler/simplCore/SimplUtils.lhs  compiler/simplCore/Simplify.lhs  compiler/simplStg/SRT.lhs  compiler/simplStg/SimplStg.lhs  compiler/simplStg/StgStats.lhs  compiler/simplStg/UnariseStg.lhs  compiler/specialise/Rules.lhs  compiler/specialise/SpecConstr.lhs  compiler/specialise/Specialise.lhs  compiler/stgSyn/CoreToStg.lhs  compiler/stgSyn/StgLint.lhs  compiler/stgSyn/StgSyn.lhs  compiler/stranal/DmdAnal.lhs  compiler/stranal/WorkWrap.lhs  compiler/stranal/WwLib.lhs  compiler/typecheck/FamInst.lhs  compiler/typecheck/Inst.lhs  compiler/typecheck/TcAnnotations.lhs  compiler/typecheck/TcArrows.lhs  compiler/typecheck/TcBinds.lhs  compiler/typecheck/TcClassDcl.lhs  compiler/typecheck/TcDefaults.lhs  compiler/typecheck/TcDeriv.lhs  compiler/typecheck/TcEnv.lhs  compiler/typecheck/TcExpr.lhs  compiler/typecheck/TcForeign.lhs  compiler/typecheck/TcGenDeriv.lhs  compiler/typecheck/TcGenGenerics.lhs  compiler/typecheck/TcHsSyn.lhs  compiler/typecheck/TcHsType.lhs  compiler/typecheck/TcInstDcls.lhs  compiler/typecheck/TcMType.lhs  compiler/typecheck/TcMatches.lhs  compiler/typecheck/TcPat.lhs  compiler/typecheck/TcRnDriver.lhs  compiler/typecheck/TcRnMonad.lhs  compiler/typecheck/TcRnTypes.lhs  compiler/typecheck/TcRules.lhs  compiler/typecheck/TcSimplify.lhs  compiler/typecheck/TcErrors.lhs  compiler/typecheck/TcTyClsDecls.lhs  compiler/typecheck/TcTyDecls.lhs  compiler/typecheck/TcType.lhs  compiler/typecheck/TcEvidence.lhs  compiler/typecheck/TcUnify.lhs  compiler/typecheck/TcInteract.lhs  compiler/typecheck/TcCanonical.lhs  compiler/typecheck/TcSMonad.lhs  compiler/types/Class.lhs  compiler/types/Coercion.lhs  compiler/types/FamInstEnv.lhs  compiler/types/FunDeps.lhs  compiler/types/InstEnv.lhs  compiler/types/TyCon.lhs  compiler/types/Kind.lhs  compiler/types/Type.lhs  compiler/types/TypeRep.lhs  compiler/types/Unify.lhs  compiler/utils/Bag.lhs  compiler/utils/Binary.hs  compiler/utils/BufWrite.hs  compiler/utils/Digraph.lhs  compiler/utils/Encoding.hs  compiler/utils/FastBool.lhs  compiler/utils/FastFunctions.lhs  compiler/utils/FastMutInt.lhs  compiler/utils/FastString.lhs  compiler/utils/FastTypes.lhs  compiler/stage1/build/Fingerprint.hs  compiler/utils/FiniteMap.lhs  compiler/utils/GraphBase.hs  compiler/utils/GraphColor.hs  compiler/utils/GraphOps.hs  compiler/utils/GraphPpr.hs  compiler/utils/IOEnv.hs  compiler/utils/ListSetOps.lhs  compiler/utils/Maybes.lhs  compiler/utils/MonadUtils.hs  compiler/utils/OrdList.lhs  compiler/utils/Outputable.lhs  compiler/utils/Pair.lhs  compiler/utils/Panic.lhs  compiler/utils/Pretty.lhs  compiler/utils/Serialized.hs  compiler/utils/State.hs  compiler/utils/Stream.hs  compiler/utils/StringBuffer.lhs  compiler/utils/UniqFM.lhs  compiler/utils/UniqSet.lhs  compiler/utils/Util.lhs  compiler/vectorise/Vectorise/Builtins/Base.hs  compiler/vectorise/Vectorise/Builtins/Initialise.hs  compiler/vectorise/Vectorise/Builtins.hs  compiler/vectorise/Vectorise/Monad/Base.hs  compiler/vectorise/Vectorise/Monad/Naming.hs  compiler/vectorise/Vectorise/Monad/Local.hs  compiler/vectorise/Vectorise/Monad/Global.hs  compiler/vectorise/Vectorise/Monad/InstEnv.hs  compiler/vectorise/Vectorise/Monad.hs  compiler/vectorise/Vectorise/Utils/Base.hs  compiler/vectorise/Vectorise/Utils/Closure.hs  compiler/vectorise/Vectorise/Utils/Hoisting.hs  compiler/vectorise/Vectorise/Utils/PADict.hs  compiler/vectorise/Vectorise/Utils/Poly.hs  compiler/vectorise/Vectorise/Utils.hs  compiler/vectorise/Vectorise/Generic/Description.hs  compiler/vectorise/Vectorise/Generic/PAMethods.hs  compiler/vectorise/Vectorise/Generic/PADict.hs  compiler/vectorise/Vectorise/Generic/PData.hs  compiler/vectorise/Vectorise/Type/Env.hs  compiler/vectorise/Vectorise/Type/Type.hs  compiler/vectorise/Vectorise/Type/TyConDecl.hs  compiler/vectorise/Vectorise/Type/Classify.hs  compiler/vectorise/Vectorise/Convert.hs  compiler/vectorise/Vectorise/Vect.hs  compiler/vectorise/Vectorise/Var.hs  compiler/vectorise/Vectorise/Env.hs  compiler/vectorise/Vectorise/Exp.hs  compiler/vectorise/Vectorise.hs  compiler/cmm/Hoopl/Dataflow.hs  compiler/cmm/Hoopl.hs  compiler/nativeGen/AsmCodeGen.lhs  compiler/nativeGen/TargetReg.hs  compiler/nativeGen/NCGMonad.hs  compiler/nativeGen/Instruction.hs  compiler/nativeGen/Size.hs  compiler/nativeGen/Reg.hs  compiler/nativeGen/RegClass.hs  compiler/nativeGen/PIC.hs  compiler/utils/Platform.hs  compiler/nativeGen/CPrim.hs  compiler/nativeGen/X86/Regs.hs  compiler/nativeGen/X86/RegInfo.hs  compiler/nativeGen/X86/Instr.hs  compiler/nativeGen/X86/Cond.hs  compiler/nativeGen/X86/Ppr.hs  compiler/nativeGen/X86/CodeGen.hs  compiler/nativeGen/PPC/Regs.hs  compiler/nativeGen/PPC/RegInfo.hs  compiler/nativeGen/PPC/Instr.hs  compiler/nativeGen/PPC/Cond.hs  compiler/nativeGen/PPC/Ppr.hs  compiler/nativeGen/PPC/CodeGen.hs  compiler/nativeGen/SPARC/Base.hs  compiler/nativeGen/SPARC/Regs.hs  compiler/nativeGen/SPARC/RegPlate.hs  compiler/nativeGen/SPARC/Imm.hs  compiler/nativeGen/SPARC/AddrMode.hs  compiler/nativeGen/SPARC/Cond.hs  compiler/nativeGen/SPARC/Instr.hs  compiler/nativeGen/SPARC/Stack.hs  compiler/nativeGen/SPARC/ShortcutJump.hs  compiler/nativeGen/SPARC/Ppr.hs  compiler/nativeGen/SPARC/CodeGen.hs  compiler/nativeGen/SPARC/CodeGen/Amode.hs  compiler/nativeGen/SPARC/CodeGen/Base.hs  compiler/nativeGen/SPARC/CodeGen/CondCode.hs  compiler/nativeGen/SPARC/CodeGen/Gen32.hs  compiler/nativeGen/SPARC/CodeGen/Gen64.hs  compiler/nativeGen/SPARC/CodeGen/Sanity.hs  compiler/nativeGen/SPARC/CodeGen/Expand.hs  compiler/nativeGen/RegAlloc/Liveness.hs  compiler/nativeGen/RegAlloc/Graph/Main.hs  compiler/nativeGen/RegAlloc/Graph/Stats.hs  compiler/nativeGen/RegAlloc/Graph/ArchBase.hs  compiler/nativeGen/RegAlloc/Graph/ArchX86.hs  compiler/nativeGen/RegAlloc/Graph/Coalesce.hs  compiler/nativeGen/RegAlloc/Graph/Spill.hs  compiler/nativeGen/RegAlloc/Graph/SpillClean.hs  compiler/nativeGen/RegAlloc/Graph/SpillCost.hs  compiler/nativeGen/RegAlloc/Graph/TrivColorable.hs  compiler/nativeGen/RegAlloc/Linear/Main.hs  compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs  compiler/nativeGen/RegAlloc/Linear/State.hs  compiler/nativeGen/RegAlloc/Linear/Stats.hs  compiler/nativeGen/RegAlloc/Linear/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/StackMap.hs  compiler/nativeGen/RegAlloc/Linear/Base.hs  compiler/nativeGen/RegAlloc/Linear/X86/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/PPC/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/SPARC/FreeRegs.hs
"rm" -f libraries/hpc/dist-boot/build/.depend-v.haskell.tmp  
"/usr/bin/ghc" -M -dep-makefile libraries/hpc/dist-boot/build/.depend-v.haskell.tmp  -include-pkg-deps -H32m -O -package-db libraries/bootstrapping.conf -package-name hpc-0.6.0.0 -hide-all-packages -i -ilibraries/hpc/. -ilibraries/hpc/dist-boot/build -ilibraries/hpc/dist-boot/build/autogen -Ilibraries/hpc/dist-boot/build -Ilibraries/hpc/dist-boot/build/autogen -Ilibraries/hpc/. -optP-include -optPlibraries/hpc/dist-boot/build/autogen/cabal_macros.h -package base-4.6.0.1 -package containers-0.5.0.0 -package directory-1.2.0.1 -package time-1.4.0.1 -Wall -XHaskell98 -XCPP -no-user-package-db -rtsopts -odir libraries/hpc/dist-boot/build -hidir libraries/hpc/dist-boot/build -stubdir libraries/hpc/dist-boot/build -hisuf hi -osuf o -hcsuf hc  libraries/hpc/./Trace/Hpc/Util.hs  libraries/hpc/./Trace/Hpc/Mix.hs  libraries/hpc/./Trace/Hpc/Tix.hs  libraries/hpc/dist-boot/build/Trace/Hpc/Reflect.hs
echo "libraries/hpc_dist-boot_depfile_haskell_EXISTS = YES" >> libraries/hpc/dist-boot/build/.depend-v.haskell.tmp
for dir in libraries/hpc/dist-boot/build/Trace/Hpc/; do if test ! -d $dir; then mkdir -p $dir; fi done
grep -v ' : [a-zA-Z]:/' libraries/hpc/dist-boot/build/.depend-v.haskell.tmp > libraries/hpc/dist-boot/build/.depend-v.haskell

ppc32 builds just fine, onle 64bit is affected

Version-Release number of selected component (if applicable):
ghc-7.6.3-13.fc20

How reproducible:


Steps to Reproduce:
1.ppc-koji build --scratch f20 ghc-7.6.3-13.fc20.src.rpm
2.
3.

Actual results:
http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1269012

Expected results:


Additional info:

Comment 1 Jens Petersen 2013-08-20 08:07:39 UTC
I see.  Hmm, I might need to do some debugging on this but it doesn't look so good.

Comment 2 Jens Petersen 2013-08-20 08:21:25 UTC
Seems it is not a Fedora specific issue:

http://ghc.haskell.org/trac/ghc/ticket/8134

Comment 3 Jens Petersen 2013-09-05 05:46:21 UTC
I did a scratch build to verify the build command where it hangs:

http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1396379

"/usr/bin/ghc" -M -dep-makefile compiler/stage1/build/.depend-v.haskell.tmp  -include-pkg-deps -H32m -O -package-db libraries/bootstrapping.conf -package-name ghc-7.6.3 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage1/build -icompiler/stage1/build/autogen -Icompiler/stage1/build -Icompiler/stage1/build/autogen -Icompiler/stage1 -Icompiler/. -Icompiler/parser -Icompiler/utils -optP-include -optPcompiler/stage1/build/autogen/cabal_macros.h -package Cabal-1.16.0 -package array-0.4.0.1 -package base-4.6.0.1 -package bin-package-db-0.0.0.0 -package bytestring-0.10.0.2 -package containers-0.5.0.0 -package directory-1.2.0.1 -package filepath-1.3.0.1 -package hoopl-3.9.0.0 -package hpc-0.6.0.0 -package process-1.1.0.2 -package time-1.4.0.1 -package unix-2.6.0.1 -Wall -fno-warn-name-shadowing -fno-warn-orphans -XHaskell98 -XNondecreasingIndentation -XCPP -XMagicHash -XUnboxedTuples -XPatternGuards -XForeignFunctionInterface -XEmptyDataDecls -XTypeSynonymInstances -XMultiParamTypeClasses -XFlexibleInstances -XRankNTypes -XScopedTypeVariables -XDeriveDataTypeable -XBangPatterns -DNO_REGS -DSTAGE=1 -no-user-package-db -rtsopts -odir compiler/stage1/build -hidir compiler/stage1/build -stubdir compiler/stage1/build -hisuf hi -osuf o -hcsuf hc  compiler/basicTypes/Avail.hs  compiler/basicTypes/BasicTypes.lhs  compiler/basicTypes/DataCon.lhs  compiler/basicTypes/Demand.lhs  compiler/utils/Exception.hs  compiler/main/GhcMonad.hs  compiler/basicTypes/Id.lhs  compiler/basicTypes/IdInfo.lhs  compiler/basicTypes/Literal.lhs  compiler/llvmGen/Llvm.hs  compiler/llvmGen/Llvm/AbsSyn.hs  compiler/llvmGen/Llvm/PpLlvm.hs  compiler/llvmGen/Llvm/Types.hs  compiler/llvmGen/LlvmCodeGen.hs  compiler/llvmGen/LlvmCodeGen/Base.hs  compiler/llvmGen/LlvmCodeGen/CodeGen.hs  compiler/llvmGen/LlvmCodeGen/Data.hs  compiler/llvmGen/LlvmCodeGen/Ppr.hs  compiler/llvmGen/LlvmCodeGen/Regs.hs  compiler/llvmGen/LlvmMangler.hs  compiler/basicTypes/MkId.lhs  compiler/basicTypes/Module.lhs  compiler/basicTypes/Name.lhs  compiler/basicTypes/NameEnv.lhs  compiler/basicTypes/NameSet.lhs  compiler/basicTypes/OccName.lhs  compiler/basicTypes/RdrName.lhs  compiler/basicTypes/SrcLoc.lhs  compiler/basicTypes/UniqSupply.lhs  compiler/basicTypes/Unique.lhs  compiler/basicTypes/Var.lhs  compiler/basicTypes/VarEnv.lhs  compiler/basicTypes/VarSet.lhs  compiler/cmm/BlockId.hs  compiler/cmm/CLabel.hs  compiler/cmm/Cmm.hs  compiler/cmm/CmmBuildInfoTables.hs  compiler/cmm/CmmPipeline.hs  compiler/cmm/CmmCallConv.hs  compiler/cmm/CmmCommonBlockElim.hs  compiler/cmm/CmmContFlowOpt.hs  compiler/cmm/CmmCvt.hs  compiler/cmm/CmmExpr.hs  compiler/cmm/CmmInfo.hs  compiler/cmm/CmmLex.hs  compiler/cmm/CmmLint.hs  compiler/cmm/CmmLive.hs  compiler/cmm/CmmMachOp.hs  compiler/cmm/CmmNode.hs  compiler/cmm/CmmOpt.hs  compiler/cmm/CmmParse.hs  compiler/cmm/CmmProcPoint.hs  compiler/cmm/CmmRewriteAssignments.hs  compiler/cmm/CmmSink.hs  compiler/cmm/CmmType.hs  compiler/cmm/CmmUtils.hs  compiler/cmm/CmmLayoutStack.hs  compiler/cmm/MkGraph.hs  compiler/cmm/OldCmm.hs  compiler/cmm/OldCmmLint.hs  compiler/cmm/OldCmmUtils.hs  compiler/cmm/OldPprCmm.hs  compiler/nativeGen/PprBase.hs  compiler/cmm/PprC.hs  compiler/cmm/PprCmm.hs  compiler/cmm/PprCmmDecl.hs  compiler/cmm/PprCmmExpr.hs  compiler/cmm/Bitmap.hs  compiler/codeGen/CgBindery.lhs  compiler/codeGen/CgCallConv.hs  compiler/codeGen/CgCase.lhs  compiler/codeGen/CgClosure.lhs  compiler/codeGen/CgCon.lhs  compiler/codeGen/CgExpr.lhs  compiler/codeGen/CgExtCode.hs  compiler/codeGen/CgForeignCall.hs  compiler/codeGen/CgHeapery.lhs  compiler/codeGen/CgHpc.hs  compiler/codeGen/CgInfoTbls.hs  compiler/codeGen/CgLetNoEscape.lhs  compiler/codeGen/CgMonad.lhs  compiler/codeGen/CgParallel.hs  compiler/codeGen/CgPrimOp.hs  compiler/codeGen/CgProf.hs  compiler/codeGen/CgStackery.lhs  compiler/codeGen/CgTailCall.lhs  compiler/codeGen/CgTicky.hs  compiler/codeGen/CgUtils.hs  compiler/codeGen/StgCmm.hs  compiler/codeGen/StgCmmBind.hs  compiler/codeGen/StgCmmClosure.hs  compiler/codeGen/StgCmmCon.hs  compiler/codeGen/StgCmmEnv.hs  compiler/codeGen/StgCmmExpr.hs  compiler/codeGen/StgCmmForeign.hs  compiler/codeGen/StgCmmGran.hs  compiler/codeGen/StgCmmHeap.hs  compiler/codeGen/StgCmmHpc.hs  compiler/codeGen/StgCmmLayout.hs  compiler/codeGen/StgCmmMonad.hs  compiler/codeGen/StgCmmPrim.hs  compiler/codeGen/StgCmmProf.hs  compiler/codeGen/StgCmmTicky.hs  compiler/codeGen/StgCmmUtils.hs  compiler/codeGen/ClosureInfo.lhs  compiler/codeGen/CodeGen.lhs  compiler/cmm/SMRep.lhs  compiler/coreSyn/CoreArity.lhs  compiler/coreSyn/CoreFVs.lhs  compiler/coreSyn/CoreLint.lhs  compiler/coreSyn/CorePrep.lhs  compiler/coreSyn/CoreSubst.lhs  compiler/coreSyn/CoreSyn.lhs  compiler/coreSyn/TrieMap.lhs  compiler/coreSyn/CoreTidy.lhs  compiler/coreSyn/CoreUnfold.lhs  compiler/coreSyn/CoreUtils.lhs  compiler/coreSyn/ExternalCore.lhs  compiler/coreSyn/MkCore.lhs  compiler/coreSyn/MkExternalCore.lhs  compiler/coreSyn/PprCore.lhs  compiler/coreSyn/PprExternalCore.lhs  compiler/deSugar/Check.lhs  compiler/deSugar/Coverage.lhs  compiler/deSugar/Desugar.lhs  compiler/deSugar/DsArrows.lhs  compiler/deSugar/DsBinds.lhs  compiler/deSugar/DsCCall.lhs  compiler/deSugar/DsExpr.lhs  compiler/deSugar/DsForeign.lhs  compiler/deSugar/DsGRHSs.lhs  compiler/deSugar/DsListComp.lhs  compiler/deSugar/DsMonad.lhs  compiler/deSugar/DsUtils.lhs  compiler/deSugar/Match.lhs  compiler/deSugar/MatchCon.lhs  compiler/deSugar/MatchLit.lhs  compiler/hsSyn/HsBinds.lhs  compiler/hsSyn/HsDecls.lhs  compiler/hsSyn/HsDoc.hs  compiler/hsSyn/HsExpr.lhs  compiler/hsSyn/HsImpExp.lhs  compiler/hsSyn/HsLit.lhs  compiler/hsSyn/HsPat.lhs  compiler/hsSyn/HsSyn.lhs  compiler/hsSyn/HsTypes.lhs  compiler/hsSyn/HsUtils.lhs  compiler/iface/BinIface.hs  compiler/iface/BuildTyCl.lhs  compiler/iface/IfaceEnv.lhs  compiler/iface/IfaceSyn.lhs  compiler/iface/IfaceType.lhs  compiler/iface/LoadIface.lhs  compiler/iface/MkIface.lhs  compiler/iface/TcIface.lhs  compiler/iface/FlagChecker.hs  compiler/main/Annotations.hs  compiler/main/BreakArray.hs  compiler/main/CmdLineParser.hs  compiler/main/CodeOutput.lhs  compiler/stage1/build/Config.hs  compiler/main/Constants.lhs  compiler/main/DriverMkDepend.hs  compiler/main/DriverPhases.hs  compiler/main/DriverPipeline.hs  compiler/main/DynFlags.hs  compiler/main/ErrUtils.lhs  compiler/main/Finder.lhs  compiler/main/GHC.hs  compiler/main/GhcMake.hs  compiler/main/GhcPlugins.hs  compiler/main/DynamicLoading.hs  compiler/main/HeaderInfo.hs  compiler/main/HscMain.hs  compiler/main/HscStats.hs  compiler/main/HscTypes.lhs  compiler/main/InteractiveEval.hs  compiler/main/PackageConfig.hs  compiler/main/Packages.lhs  compiler/main/PprTyThing.hs  compiler/main/StaticFlags.hs  compiler/main/StaticFlagParser.hs  compiler/main/SysTools.lhs  compiler/main/TidyPgm.lhs  compiler/parser/Ctype.lhs  compiler/parser/HaddockUtils.hs  compiler/parser/LexCore.hs  compiler/parser/Lexer.hs  compiler/types/OptCoercion.lhs  compiler/parser/Parser.hs  compiler/parser/ParserCore.hs  compiler/parser/ParserCoreUtils.hs  compiler/parser/RdrHsSyn.lhs  compiler/prelude/ForeignCall.lhs  compiler/prelude/PrelInfo.lhs  compiler/prelude/PrelNames.lhs  compiler/prelude/PrelRules.lhs  compiler/prelude/PrimOp.lhs  compiler/prelude/TysPrim.lhs  compiler/prelude/TysWiredIn.lhs  compiler/profiling/CostCentre.lhs  compiler/profiling/ProfInit.hs  compiler/profiling/SCCfinal.lhs  compiler/rename/RnBinds.lhs  compiler/rename/RnEnv.lhs  compiler/rename/RnExpr.lhs  compiler/rename/RnHsDoc.hs  compiler/rename/RnNames.lhs  compiler/rename/RnPat.lhs  compiler/rename/RnSource.lhs  compiler/rename/RnTypes.lhs  compiler/simplCore/CoreMonad.lhs  compiler/simplCore/CSE.lhs  compiler/simplCore/FloatIn.lhs  compiler/simplCore/FloatOut.lhs  compiler/simplCore/LiberateCase.lhs  compiler/simplCore/OccurAnal.lhs  compiler/simplCore/SAT.lhs  compiler/simplCore/SetLevels.lhs  compiler/simplCore/SimplCore.lhs  compiler/simplCore/SimplEnv.lhs  compiler/simplCore/SimplMonad.lhs  compiler/simplCore/SimplUtils.lhs  compiler/simplCore/Simplify.lhs  compiler/simplStg/SRT.lhs  compiler/simplStg/SimplStg.lhs  compiler/simplStg/StgStats.lhs  compiler/simplStg/UnariseStg.lhs  compiler/specialise/Rules.lhs  compiler/specialise/SpecConstr.lhs  compiler/specialise/Specialise.lhs  compiler/stgSyn/CoreToStg.lhs  compiler/stgSyn/StgLint.lhs  compiler/stgSyn/StgSyn.lhs  compiler/stranal/DmdAnal.lhs  compiler/stranal/WorkWrap.lhs  compiler/stranal/WwLib.lhs  compiler/typecheck/FamInst.lhs  compiler/typecheck/Inst.lhs  compiler/typecheck/TcAnnotations.lhs  compiler/typecheck/TcArrows.lhs  compiler/typecheck/TcBinds.lhs  compiler/typecheck/TcClassDcl.lhs  compiler/typecheck/TcDefaults.lhs  compiler/typecheck/TcDeriv.lhs  compiler/typecheck/TcEnv.lhs  compiler/typecheck/TcExpr.lhs  compiler/typecheck/TcForeign.lhs  compiler/typecheck/TcGenDeriv.lhs  compiler/typecheck/TcGenGenerics.lhs  compiler/typecheck/TcHsSyn.lhs  compiler/typecheck/TcHsType.lhs  compiler/typecheck/TcInstDcls.lhs  compiler/typecheck/TcMType.lhs  compiler/typecheck/TcMatches.lhs  compiler/typecheck/TcPat.lhs  compiler/typecheck/TcRnDriver.lhs  compiler/typecheck/TcRnMonad.lhs  compiler/typecheck/TcRnTypes.lhs  compiler/typecheck/TcRules.lhs  compiler/typecheck/TcSimplify.lhs  compiler/typecheck/TcErrors.lhs  compiler/typecheck/TcTyClsDecls.lhs  compiler/typecheck/TcTyDecls.lhs  compiler/typecheck/TcType.lhs  compiler/typecheck/TcEvidence.lhs  compiler/typecheck/TcUnify.lhs  compiler/typecheck/TcInteract.lhs  compiler/typecheck/TcCanonical.lhs  compiler/typecheck/TcSMonad.lhs  compiler/types/Class.lhs  compiler/types/Coercion.lhs  compiler/types/FamInstEnv.lhs  compiler/types/FunDeps.lhs  compiler/types/InstEnv.lhs  compiler/types/TyCon.lhs  compiler/types/Kind.lhs  compiler/types/Type.lhs  compiler/types/TypeRep.lhs  compiler/types/Unify.lhs  compiler/utils/Bag.lhs  compiler/utils/Binary.hs  compiler/utils/BufWrite.hs  compiler/utils/Digraph.lhs  compiler/utils/Encoding.hs  compiler/utils/FastBool.lhs  compiler/utils/FastFunctions.lhs  compiler/utils/FastMutInt.lhs  compiler/utils/FastString.lhs  compiler/utils/FastTypes.lhs  compiler/stage1/build/Fingerprint.hs  compiler/utils/FiniteMap.lhs  compiler/utils/GraphBase.hs  compiler/utils/GraphColor.hs  compiler/utils/GraphOps.hs  compiler/utils/GraphPpr.hs  compiler/utils/IOEnv.hs  compiler/utils/ListSetOps.lhs  compiler/utils/Maybes.lhs  compiler/utils/MonadUtils.hs  compiler/utils/OrdList.lhs  compiler/utils/Outputable.lhs  compiler/utils/Pair.lhs  compiler/utils/Panic.lhs  compiler/utils/Pretty.lhs  compiler/utils/Serialized.hs  compiler/utils/State.hs  compiler/utils/Stream.hs  compiler/utils/StringBuffer.lhs  compiler/utils/UniqFM.lhs  compiler/utils/UniqSet.lhs  compiler/utils/Util.lhs  compiler/vectorise/Vectorise/Builtins/Base.hs  compiler/vectorise/Vectorise/Builtins/Initialise.hs  compiler/vectorise/Vectorise/Builtins.hs  compiler/vectorise/Vectorise/Monad/Base.hs  compiler/vectorise/Vectorise/Monad/Naming.hs  compiler/vectorise/Vectorise/Monad/Local.hs  compiler/vectorise/Vectorise/Monad/Global.hs  compiler/vectorise/Vectorise/Monad/InstEnv.hs  compiler/vectorise/Vectorise/Monad.hs  compiler/vectorise/Vectorise/Utils/Base.hs  compiler/vectorise/Vectorise/Utils/Closure.hs  compiler/vectorise/Vectorise/Utils/Hoisting.hs  compiler/vectorise/Vectorise/Utils/PADict.hs  compiler/vectorise/Vectorise/Utils/Poly.hs  compiler/vectorise/Vectorise/Utils.hs  compiler/vectorise/Vectorise/Generic/Description.hs  compiler/vectorise/Vectorise/Generic/PAMethods.hs  compiler/vectorise/Vectorise/Generic/PADict.hs  compiler/vectorise/Vectorise/Generic/PData.hs  compiler/vectorise/Vectorise/Type/Env.hs  compiler/vectorise/Vectorise/Type/Type.hs  compiler/vectorise/Vectorise/Type/TyConDecl.hs  compiler/vectorise/Vectorise/Type/Classify.hs  compiler/vectorise/Vectorise/Convert.hs  compiler/vectorise/Vectorise/Vect.hs  compiler/vectorise/Vectorise/Var.hs  compiler/vectorise/Vectorise/Env.hs  compiler/vectorise/Vectorise/Exp.hs  compiler/vectorise/Vectorise.hs  compiler/cmm/Hoopl/Dataflow.hs  compiler/cmm/Hoopl.hs  compiler/nativeGen/AsmCodeGen.lhs  compiler/nativeGen/TargetReg.hs  compiler/nativeGen/NCGMonad.hs  compiler/nativeGen/Instruction.hs  compiler/nativeGen/Size.hs  compiler/nativeGen/Reg.hs  compiler/nativeGen/RegClass.hs  compiler/nativeGen/PIC.hs  compiler/utils/Platform.hs  compiler/nativeGen/CPrim.hs  compiler/nativeGen/X86/Regs.hs  compiler/nativeGen/X86/RegInfo.hs  compiler/nativeGen/X86/Instr.hs  compiler/nativeGen/X86/Cond.hs  compiler/nativeGen/X86/Ppr.hs  compiler/nativeGen/X86/CodeGen.hs  compiler/nativeGen/PPC/Regs.hs  compiler/nativeGen/PPC/RegInfo.hs  compiler/nativeGen/PPC/Instr.hs  compiler/nativeGen/PPC/Cond.hs  compiler/nativeGen/PPC/Ppr.hs  compiler/nativeGen/PPC/CodeGen.hs  compiler/nativeGen/SPARC/Base.hs  compiler/nativeGen/SPARC/Regs.hs  compiler/nativeGen/SPARC/RegPlate.hs  compiler/nativeGen/SPARC/Imm.hs  compiler/nativeGen/SPARC/AddrMode.hs  compiler/nativeGen/SPARC/Cond.hs  compiler/nativeGen/SPARC/Instr.hs  compiler/nativeGen/SPARC/Stack.hs  compiler/nativeGen/SPARC/ShortcutJump.hs  compiler/nativeGen/SPARC/Ppr.hs  compiler/nativeGen/SPARC/CodeGen.hs  compiler/nativeGen/SPARC/CodeGen/Amode.hs  compiler/nativeGen/SPARC/CodeGen/Base.hs  compiler/nativeGen/SPARC/CodeGen/CondCode.hs  compiler/nativeGen/SPARC/CodeGen/Gen32.hs  compiler/nativeGen/SPARC/CodeGen/Gen64.hs  compiler/nativeGen/SPARC/CodeGen/Sanity.hs  compiler/nativeGen/SPARC/CodeGen/Expand.hs  compiler/nativeGen/RegAlloc/Liveness.hs  compiler/nativeGen/RegAlloc/Graph/Main.hs  compiler/nativeGen/RegAlloc/Graph/Stats.hs  compiler/nativeGen/RegAlloc/Graph/ArchBase.hs  compiler/nativeGen/RegAlloc/Graph/ArchX86.hs  compiler/nativeGen/RegAlloc/Graph/Coalesce.hs  compiler/nativeGen/RegAlloc/Graph/Spill.hs  compiler/nativeGen/RegAlloc/Graph/SpillClean.hs  compiler/nativeGen/RegAlloc/Graph/SpillCost.hs  compiler/nativeGen/RegAlloc/Graph/TrivColorable.hs  compiler/nativeGen/RegAlloc/Linear/Main.hs  compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs  compiler/nativeGen/RegAlloc/Linear/State.hs  compiler/nativeGen/RegAlloc/Linear/Stats.hs  compiler/nativeGen/RegAlloc/Linear/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/StackMap.hs  compiler/nativeGen/RegAlloc/Linear/Base.hs  compiler/nativeGen/RegAlloc/Linear/X86/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/PPC/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/SPARC/FreeRegs.hs

Comment 4 Jens Petersen 2013-09-06 04:40:08 UTC
Strace shows a lot of:

futex(0x1002485f65c, FUTEX_WAIT_PRIVATE, 1317, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
rt_sigreturn()                          = -1100124386908

Comment 5 Jens Petersen 2013-09-10 03:59:41 UTC
Okay i dug a little deeper.  Running the command from comment 3
with the ghc verbose flag (ie "ghc -v ...") shows that it seems
to hang on:

'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'com\
piler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-\
7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/inclu\
de' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' \
'-Dpowerpc64_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Dpowerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' 'compiler/vectorise/Vec\
torise/Monad/Naming.hs' '-o' '/tmp/ghc31672_0/ghc31672_316.hscpp'

So this looks more like a cpp issue perhaps.

Comment 6 Jens Petersen 2013-09-10 04:02:43 UTC
Here is that command without the backquotes:

'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' '-Dpowerpc64_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Dpowerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' 'compiler/vectorise/Vectorise/Monad/Naming.hs' '-o' '/tmp/ghc31672_0/ghc31672_316.hscpp'

Comment 7 Fedora End Of Life 2013-09-16 16:49:05 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 20 development cycle.
Changing version to '20'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora20

Comment 8 Jens Petersen 2013-09-24 14:23:15 UTC
[Pending follow-up comment to above:]

With -v4:

:
*** Literate pre-processor:
'/usr/lib64/ghc-7.6.3/unlit' '-h' 'compiler/iface/LoadIface.lhs' 'compiler/iface/LoadIface.lhs' '/tmp/ghc3416_0/ghc3416_75.lpp'
Running phase Cpp HsSrcFile
*** C pre-processor:
'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' '-Dpowerpc64_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Dpowerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' '/tmp/ghc3416_0/ghc3416_75.lpp' '-o' '/tmp/ghc3416_0/ghc3416_152.hscpp'

I need to check of this is reproducible.

Comment 9 Jens Petersen 2013-09-24 14:24:24 UTC
I tried doing a bootstrap build of ghc-7.6.2 and it also hung in the same place.

http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1423339

Comment 10 Jens Petersen 2013-09-29 12:42:27 UTC
Maybe I finally managed to kickoff a verbose build
(by adding GhcStage1HcOpts=-v4 to build.mk in ghc.spec).

http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1431718

Comment 11 Jens Petersen 2013-09-29 13:09:06 UTC
Also need to set LANG=en_US.utf8 otherwise the encoding of verbose
non-ascii text from some packages fails the build.

http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1431755

Comment 12 Jens Petersen 2013-09-29 13:38:54 UTC
(In reply to Jens Petersen from comment #11)
> http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=1431755

This hangs at:

Running phase HsPp HsSrcFile
Running phase Cpp HsSrcFile
*** C pre-processor:
'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' '-Dpowerpc64_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Dpowerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' 'compiler/main/HeaderInfo.hs' '-o' '/tmp/ghc38326_0/ghc38326_172.hscpp'
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
Target: ppc64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-isl=/builddir/build/BUILD/gcc-4.8.1-20130814/obj-ppc64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.1-20130814/obj-ppc64-redhat-linux/cloog-install --enable-secureplt --with-long-double-128 --build=ppc64-redhat-linux
Thread model: posix
gcc version 4.8.1 20130814 (Red Hat 4.8.1-6) (GCC) 
COLLECT_GCC_OPTIONS='-E' '-undef' '-traditional' '-fno-stack-protector' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D' '__GLASGOW_HASKELL__=706' '-D' 'linux_BUILD_OS=1' '-D' 'powerpc64_BUILD_ARCH=1' '-D' 'linux_HOST_OS=1' '-D' 'powerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-D' 'NO_REGS' '-D' 'STAGE=1' '-o' '/tmp/ghc38326_0/ghc38326_172.hscpp'
 /usr/libexec/gcc/ppc64-redhat-linux/4.8.1/cc1 -E -traditional-cpp -quiet -v -I compiler/stage1/build -I compiler/stage1/build -I compiler/stage1/build/autogen -I compiler/stage1 -I compiler/. -I compiler/parser -I compiler/utils -I /usr/lib64/ghc-7.6.3/process-1.1.0.2/include -I /usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include -I /usr/lib64/ghc-7.6.3/directory-1.2.0.1/include -I /usr/lib64/ghc-7.6.3/unix-2.6.0.1/include -I /usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include -I /usr/lib64/ghc-7.6.3/time-1.4.0.1/include -I /usr/lib64/ghc-7.6.3/base-4.6.0.1/include -I /usr/lib64/ghc-7.6.3/include -D__unix__ -D__gnu_linux__ -D__linux__ -Asystem=linux -Asystem=unix -Asystem=posix -D __GLASGOW_HASKELL__=706 -D linux_BUILD_OS=1 -D powerpc64_BUILD_ARCH=1 -D linux_HOST_OS=1 -D powerpc64_HOST_ARCH=1 -D NO_REGS -D STAGE=1 -include compiler/stage1/build/autogen/cabal_macros.h compiler/main/HeaderInfo.hs -o /tmp/ghc38326_0/ghc38326_172.hscpp -msecure-plt -fno-stack-protector -undef
ignoring nonexistent directory "/usr/lib/gcc/ppc64-redhat-linux/4.8.1/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/ppc64-redhat-linux/4.8.1/../../../../ppc64-redhat-linux/include"
ignoring duplicate directory "compiler/stage1/build"
#include "..." search starts here:
#include <...> search starts here:
 compiler/stage1/build
 compiler/stage1/build/autogen
 compiler/stage1
 compiler/.
 compiler/parser
 compiler/utils
 /usr/lib64/ghc-7.6.3/process-1.1.0.2/include
 /usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include
 /usr/lib64/ghc-7.6.3/directory-1.2.0.1/include
 /usr/lib64/ghc-7.6.3/unix-2.6.0.1/include
 /usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include
 /usr/lib64/ghc-7.6.3/time-1.4.0.1/include
 /usr/lib64/ghc-7.6.3/base-4.6.0.1/include
 /usr/lib64/ghc-7.6.3/include
 /usr/lib/gcc/ppc64-redhat-linux/4.8.1/include
 /usr/local/include
 /usr/include
End of search list.
COMPILER_PATH=/usr/libexec/gcc/ppc64-redhat-linux/4.8.1/:/usr/libexec/gcc/ppc64-redhat-linux/4.8.1/:/usr/libexec/gcc/ppc64-redhat-linux/:/usr/lib/gcc/ppc64-redhat-linux/4.8.1/:/usr/lib/gcc/ppc64-redhat-linux/
LIBRARY_PATH=/usr/lib/gcc/ppc64-redhat-linux/4.8.1/:/usr/lib/gcc/ppc64-redhat-linux/4.8.1/../../../../lib64/:/lib/../lib64/:/usr/lib/../lib64/:/usr/lib/gcc/ppc64-redhat-linux/4.8.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-E' '-undef' '-traditional' '-fno-stack-protector' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D' '__GLASGOW_HASKELL__=706' '-D' 'linux_BUILD_OS=1' '-D' 'powerpc64_BUILD_ARCH=1' '-D' 'linux_HOST_OS=1' '-D' 'powerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-D' 'NO_REGS' '-D' 'STAGE=1' '-o' '/tmp/ghc38326_0/ghc38326_172.hscpp'
Running phase HsPp HsSrcFile
Running phase Cpp HsSrcFile
*** C pre-processor:
'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' '-Dpowerpc64_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Dpowerpc64_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' 'compiler/main/HscMain.hs' '-o' '/tmp/ghc38326_0/ghc38326_173.hscpp'


cf comment 8

Comment 13 Jens Petersen 2013-09-29 14:05:19 UTC
http://s390.koji.fedoraproject.org/koji/taskinfo?taskID=1220128 hung at

Running phase HsPp HsSrcFile
Running phase Unlit HsSrcFile
*** Literate pre-processor:
'/usr/lib64/ghc-7.6.3/unlit' '-h' 'compiler/coreSyn/ExternalCore.lhs' 'compiler/coreSyn/ExternalCore.lhs' '/tmp/ghc36897_0/ghc36897_42.lpp'
Running phase Cpp HsSrcFile
*** C pre-processor:
'/usr/bin/gcc' '-E' '-undef' '-traditional' '-fno-stack-protector' '-Wl,--hash-size=31' '-Wl,--reduce-memory-overheads' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D__GLASGOW_HASKELL__=706' '-Dlinux_BUILD_OS=1' '-Ds390x_BUILD_ARCH=1' '-Dlinux_HOST_OS=1' '-Ds390x_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-DNO_REGS' '-DSTAGE=1' '-x' 'c' '/tmp/ghc36897_0/ghc36897_42.lpp' '-o' '/tmp/ghc36897_0/ghc36897_117.hscpp'
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
Target: s390x-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,go,lto --enable-plugin --enable-initfini-array --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-isl=/builddir/build/BUILD/gcc-4.8.1-20130814/obj-s390x-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.1-20130814/obj-s390x-redhat-linux/cloog-install --with-long-double-128 --with-arch=z9-109 --with-tune=z10 --enable-decimal-float --build=s390x-redhat-linux
Thread model: posix
gcc version 4.8.1 20130814 (Red Hat 4.8.1-6) (GCC) 
COLLECT_GCC_OPTIONS='-E' '-undef' '-traditional' '-fno-stack-protector' '-v' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build' '-I' 'compiler/stage1/build/autogen' '-I' 'compiler/stage1' '-I' 'compiler/.' '-I' 'compiler/parser' '-I' 'compiler/utils' '-I' '/usr/lib64/ghc-7.6.3/process-1.1.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/directory-1.2.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/unix-2.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include' '-I' '/usr/lib64/ghc-7.6.3/time-1.4.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/base-4.6.0.1/include' '-I' '/usr/lib64/ghc-7.6.3/include' '-D' '__GLASGOW_HASKELL__=706' '-D' 'linux_BUILD_OS=1' '-D' 's390x_BUILD_ARCH=1' '-D' 'linux_HOST_OS=1' '-D' 's390x_HOST_ARCH=1' '-include' 'compiler/stage1/build/autogen/cabal_macros.h' '-D' 'NO_REGS' '-D' 'STAGE=1' '-o' '/tmp/ghc36897_0/ghc36897_117.hscpp' '-march=z9-109' '-mtune=z10' '-m64' '-mzarch'
 /usr/libexec/gcc/s390x-redhat-linux/4.8.1/cc1 -E -traditional-cpp -quiet -v -I compiler/stage1/build -I compiler/stage1/build -I compiler/stage1/build/autogen -I compiler/stage1 -I compiler/. -I compiler/parser -I compiler/utils -I /usr/lib64/ghc-7.6.3/process-1.1.0.2/include -I /usr/lib64/ghc-7.6.3/old-time-1.1.0.1/include -I /usr/lib64/ghc-7.6.3/directory-1.2.0.1/include -I /usr/lib64/ghc-7.6.3/unix-2.6.0.1/include -I /usr/lib64/ghc-7.6.3/bytestring-0.10.0.2/include -I /usr/lib64/ghc-7.6.3/time-1.4.0.1/include -I /usr/lib64/ghc-7.6.3/base-4.6.0.1/include -I /usr/lib64/ghc-7.6.3/include -D __GLASGOW_HASKELL__=706 -D linux_BUILD_OS=1 -D s390x_BUILD_ARCH=1 -D linux_HOST_OS=1 -D s390x_HOST_ARCH=1 -D NO_REGS -D STAGE=1 -include compiler/stage1/build/autogen/cabal_macros.h /tmp/ghc36897_0/ghc36897_42.lpp -o /tmp/ghc36897_0/ghc36897_117.hscpp -march=z9-109 -mtune=z10 -m64 -mzarch -fno-stack-protector -undef
ignoring nonexistent directory "/usr/lib/gcc/s390x-redhat-linux/4.8.1/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/s390x-redhat-linux/4.8.1/../../../../s390x-redhat-linux/include"
ignoring duplicate directory "compiler/stage1/build"
#include "..." search starts here:
#include <...> search starts here:
 compiler/stage1/build
 compiler/stage1/build/autogen
 compiler/stage1
 compiler/.
 compiler/parser
 compiler/utils
 /usr/lib64/ghc-7.6.3/process-1.1.0.2/include


So far the hangs under the big command look random, which I also saw
when running it verbosely by hand, and so naively seems to
put more suspicion on gcc/cpp but really need to investigate further.

Comment 14 Jens Petersen 2013-09-29 14:11:34 UTC
Created attachment 804724 [details]
ghc.spec-verbose-build.patch

Comment 15 Jens Petersen 2013-09-30 09:05:06 UTC
Another datapoint: apparently "strace ghc -M -dep-makefile ..."  does not hang.
This could be some kind of process race-condition perhaps.

15692 pts/3    Ssl+   3:37              \_ /usr/lib64/ghc-7.6.3/ghc -B/usr/lib64/ghc-7.6.3 -optc-I/usr/include -v1 -M -dep-m
16531 pts/3    Z+     0:00                  \_ [gcc] <defunct>

AFAICT each hang happens after the preprocessed file has been output,
and running the individual preprocessing commands by hand seems not to hang so far.

Comment 16 Dan Horák 2013-09-30 09:16:06 UTC
(In reply to Jens Petersen from comment #15)
> Another datapoint: apparently "strace ghc -M -dep-makefile ..."  does not
> hang.
> This could be some kind of process race-condition perhaps.

sounds logical as the symptom I saw looked as a waiting loop that went wrong

> 15692 pts/3    Ssl+   3:37              \_ /usr/lib64/ghc-7.6.3/ghc
> -B/usr/lib64/ghc-7.6.3 -optc-I/usr/include -v1 -M -dep-m
> 16531 pts/3    Z+     0:00                  \_ [gcc] <defunct>
> 
> AFAICT each hang happens after the preprocessed file has been output,
> and running the individual preprocessing commands by hand seems not to hang
> so far.

Comment 17 Jens Petersen 2013-09-30 10:05:32 UTC
Not a lot of info from the gdb backtrace

(gdb) bt
#0  0x00000080c6c31ad0 in .pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00000000136bd7d0 in ?? ()
#2  0x00000000136a75fc in ?? ()
#3  0x00000000136a2128 in ?? ()
#4  0x00000000136a38e8 in ?? ()
#5  0x00000000136a6004 in ?? ()
#6  0x00000000136b3524 in ?? ()
#7  0x00000000136b367c in ?? ()
#8  0x0000000010030b3c in ?? ()
#9  0x00000080c6a6482c in .generic_start_main.isra.0 () from /lib64/libc.so.6
#10 0x00000080c6a64a34 in .__libc_start_main () from /lib64/libc.so.6
#11 0x0000000000000000 in ?? ()

I tried debuginfo-install unsuccessfully (well there is no debuginfo for ghc).

Comment 18 Gustavo Luiz Duarte 2013-10-01 15:20:49 UTC
You are probably hitting this glibc bug: https://bugzilla.redhat.com/show_bug.cgi?id=1007590

Comment 19 Jens Petersen 2013-10-02 02:15:29 UTC
Thank you Gustavo for the valuable information.
Then I will wait for an glibc update or other news on this.

Comment 20 Jens Petersen 2013-10-02 03:55:59 UTC
Okay I tried glibc-2.18-10.fc20.ppc64 but the ghc build still hung
in the same place as above.

Comment 21 Dan Horák 2013-10-02 06:54:24 UTC
for the record this strace output for the stuck ghc process with the old glibc on f20/s390x

...
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164
futex(0x9106065c, FUTEX_WAIT_PRIVATE, 1289, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_pid=0, si_uid=0, si_value=0} ---
sigreturn() (mask [])                   = 2433091164

Comment 22 Dan Horák 2013-10-02 07:10:55 UTC
and really the same symptoms with glibc-2.18-10.fc20.s390x installed

Comment 23 Siddhesh Poyarekar 2013-10-03 05:04:28 UTC
The futex syscall is being continuously interrupted by SIGVTALRM, which seems to be the cause.  Since you're stuck in pthread_cond_wait, I'd look at who is calling it and also who has registered that alarm, which is probably going off way too often.

Comment 24 Gustavo Luiz Duarte 2013-10-09 20:51:30 UTC
ghc seems to have a tracing facility... have you tried enabling DEBUG_sched?

Comment 25 Jens Petersen 2013-10-11 03:38:36 UTC
(In reply to Gustavo Luiz Duarte from comment #24)
> ghc seems to have a tracing facility... have you tried enabling DEBUG_sched?

I am not familiar with it: do you have any more info on it?

Comment 26 Jens Petersen 2013-10-11 05:17:00 UTC
Looking through the ghc compiler driver code, it seems the exit
point from ghc to the process library related to the seen hangs
happens from compiler/main/SysTools.lhs.

runCpp or runUnlit -> runSomething -> builderMainLoop which is defined at:

http://git.haskell.org/ghc.git/blob/HEAD:/compiler/main/SysTools.lhs#l1014

and runs the process which a loop watches:

    -- status starts at zero, and increments each time either
    -- a reader process gets EOF, or the build proc exits.  We wait
    -- for all of these to happen (status==3).
    -- ToDo: we should really have a contingency plan in case any of
    -- the threads dies, such as a timeout.

Dunno if the last comment may be relevant to this bug...

Comment 27 Gustavo Luiz Duarte 2013-10-28 15:15:44 UTC
Created attachment 816841 [details]
Fix infinite loop on 64 bits big endian platforms

I was able to build ghc with debug enabled, which gave me a sane stack trace that pointed where ghc is stuck.

I've attached a patch that fixes this issue. Notice that we will have to re-bootstrap ghc-7.6.3 using an older ghc in the buildroot (I tested using 7.4.2-11.1.fc19) to make sure we don't hit this issue during the build.

More details on this issue and the fix can be found on the upstream bug: http://ghc.haskell.org/trac/ghc/ticket/8134#comment:12

Comment 28 Jens Petersen 2013-10-29 01:23:34 UTC
Thank you Gustavo this is really great.

I will start working on getting this into Rawhide and F20 particularly,
coordinating the the PPC and S390 port maintainers.

Comment 29 Jens Petersen 2013-10-29 03:04:48 UTC
Gustavo, can you also attach a patch showing the changes you made
to ghc.spec or ghc to do the debug build?  That would be very useful
reference for the future if we should hit a similar problem again,
and anyway I would like to know how to do it.

Comment 30 Jens Petersen 2013-10-29 05:38:55 UTC
(One good news is that the patch does not seem to affect the ABI hashes directly
at least on intel.)

Comment 31 Jens Petersen 2013-10-29 09:07:49 UTC
I have committed the patch to ghc master and f20 branches.

This is the F21 (rawhide) commit (for ghc-7.6.3-19.fc21)
which can be used to rebootstrap ppc* and s390*:

commit bf23eb900bd28cfd861ddcbbe179b49e758fd56d
Date:   Tue Oct 29 14:59:08 2013 +0900

    bootstrap build to fix hangs on 64bit bigendian
    
    - rts hang patch from Gustavo Luiz Duarte (#989593)


Currently F20 bootstrap build (ghc-7.6.3-18.1.fc20) is building in main koji:
http://koji.fedoraproject.org/koji/buildinfo?buildID=474489

As Gustavo mentioned both need to be rebootstrapped against ghc-7.4.2
which should avoid the RTS channel hang being experienced
with current ghc-7.6.3 builds on bigendian 64bit archs.

Comment 32 Jens Petersen 2013-10-29 09:26:45 UTC
(In reply to Jens Petersen from comment #31)
> commit bf23eb900bd28cfd861ddcbbe179b49e758fd56d
:
>     bootstrap build to fix hangs on 64bit bigendian
>     - rts hang patch from Gustavo Luiz Duarte (#989593)

The f21 scratch build is here btw:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6110501

Comment 33 Jens Petersen 2013-10-29 10:04:09 UTC
(In reply to Gustavo Luiz Duarte from comment #27)
> I was able to build ghc with debug enabled, which gave me a sane stack trace
> that pointed where ghc is stuck.

Ah maybe I should enable debuginfo for ghc builds since indeed
it contains some C code.

Comment 34 Gustavo Luiz Duarte 2013-10-29 12:12:51 UTC
(In reply to Jens Petersen from comment #33)
> (In reply to Gustavo Luiz Duarte from comment #27)
> > I was able to build ghc with debug enabled, which gave me a sane stack trace
> > that pointed where ghc is stuck.
> 
> Ah maybe I should enable debuginfo for ghc builds since indeed
> it contains some C code.

Yeah, I believe enabling debuginfo for ghc would be a good idea.

Regardind the changes I've made to build ghc with debug enabled, I added the following to mk/build.mk:
EXTRA_HC_OPTS=-debug

Please notice this option enables several other checkings and logging facilities other than just debuginfo. See:
http://ghc.haskell.org/trac/ghc/wiki/Debugging/RuntimeSystem

Comment 35 Jens Petersen 2013-10-29 15:57:38 UTC
(In reply to Gustavo Luiz Duarte from comment #34)
> Yeah, I believe enabling debuginfo for ghc would be a good idea.

Thanks yes I have enabled it in:

ghc-7.6.3-20.fc21: http://koji.fedoraproject.org/koji/buildinfo?buildID=474616
and
ghc-7.6.3-18.2.fc20: http://koji.fedoraproject.org/koji/buildinfo?buildID=474618

Fedora p-series and z-system guys: please use these builds to complete the re-bootstrapping of ghc-7.6.3.

> EXTRA_HC_OPTS=-debug

Thanks I will add it as a comment to ghc.spec.
I assume it is not good to build it into production RTS?


I see the F20 ppc and s390 bootstrap builds finished already:
http://ppc.koji.fedoraproject.org/koji/buildinfo?buildID=205255
http://s390.koji.fedoraproject.org/koji/buildinfo?buildID=217377

Thanks :)

Comment 36 Fedora Update System 2013-10-30 02:12:45 UTC
ghc-7.6.3-18.2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/ghc-7.6.3-18.2.fc20

Comment 37 Jens Petersen 2013-10-30 02:18:01 UTC
ghc-7.6.3-18.2.fc20 is now built for s390*.
ghc-7.6.3-18.1.fc20 ppc* build is not tagged yet.

Comment 38 Fedora Update System 2013-10-30 17:09:38 UTC
Package ghc-7.6.3-18.2.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing ghc-7.6.3-18.2.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-20306/ghc-7.6.3-18.2.fc20
then log in and leave karma (feedback).

Comment 39 Jens Petersen 2013-10-31 01:40:15 UTC
ghc-7.6.3-18.2.fc20 ppc and s390 builds also now in f20-updates-testing.
Thanks guys!

Comment 40 Fedora Update System 2013-11-10 06:32:53 UTC
ghc-7.6.3-18.2.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.