It looks like I accidentally slipped that fix in with the allocation counters patch, and when the patch was reverted the fix was reverted too. I'll commit the fix from the patch (which is probably better, that's what I intended to do all along).

Sorry for the mixup!

Simon

On 13/05/14 07:30, Karel Gardas wrote:

Hello Simon,

I'm sorry to disturb you, but I've noticed that your revert patch below
contains this change:

diff --git a/includes/CodeGen.Platform.hs b/includes/CodeGen.Platform.hs
index f3abb3d..3d6dd41 100644
--- a/includes/CodeGen.Platform.hs
+++ b/includes/CodeGen.Platform.hs
@@ -741,8 +741,10 @@ globalRegMaybe CurrentTSO               = Just
(RealRegSingle REG_CurrentTSO)
  # ifdef REG_CurrentNursery
  globalRegMaybe CurrentNursery           = Just (RealRegSingle
REG_CurrentNursery)
  # endif
-#endif
  globalRegMaybe _                        = Nothing
+#else
+globalRegMaybe = panic "globalRegMaybe not defined for this platform"
+#endif


and I'm not sure if this is intentional or just overlooked addition. The
problem with this line is that it causes stage1 panic on unregisterised
build on PPC64 platform:

http://haskell.inf.elte.hu/builders/linux-ppc64-head/41/10.html

and we have not had such panic before the patch:

http://haskell.inf.elte.hu/builders/linux-ppc64-head/31/10.html -- well,
you see that dll-split segfaults, but at least ghc-stage1 is proved to
work well here.

Kudos to Gabor Pali who spotted this on PPC64 builder...

Thanks!
Karel

On 05/ 4/14 11:45 PM, g...@git.haskell.org wrote:
Repository : ssh://g...@git.haskell.org/ghc

On branch  : master
Link       :
http://ghc.haskell.org/trac/ghc/changeset/f0fcc41d755876a1b02d1c7c79f57515059f6417/ghc


---------------------------------------------------------------

commit f0fcc41d755876a1b02d1c7c79f57515059f6417
Author: Simon Marlow<marlo...@gmail.com>
Date:   Sun May 4 20:27:42 2014 +0100

     Revert "Per-thread allocation counters and limits"

     Problems were found on 32-bit platforms, I'll commit again when I
have a fix.

     This reverts the following commits:
        54b31f744848da872c7c6366dea840748e01b5cf
        b0534f78a73f972e279eed4447a5687bd6a8308e


---------------------------------------------------------------

f0fcc41d755876a1b02d1c7c79f57515059f6417
  compiler/cmm/CmmLayoutStack.hs                     |   9 +-
  compiler/codeGen/StgCmmForeign.hs                  | 268
++++++---------------
  includes/CodeGen.Platform.hs                       |   4 +-
  includes/rts/Constants.h                           |   6 -
  includes/rts/Flags.h                               |   8 -
  includes/rts/Threads.h                             |   8 +-
  includes/rts/storage/TSO.h                         |  31 +--
  libraries/base/Control/Exception.hs                |   1 -
  libraries/base/Control/Exception/Base.hs           |   1 -
  libraries/base/GHC/Conc.lhs                        |   6 -
  libraries/base/GHC/Conc/Sync.lhs                   |  92 +------
  libraries/base/GHC/IO/Exception.hs                 |  21 +-
  rts/HeapStackCheck.cmm                             |   4 +-
  rts/Linker.c                                       |   4 -
  rts/Prelude.h                                      |   2 -
  rts/RaiseAsync.c                                   |  54 -----
  rts/RaiseAsync.h                                   |   4 -
  rts/RtsFlags.c                                     |  10 -
  rts/RtsStartup.c                                   |   1 -
  rts/Schedule.c                                     |  19 --
  rts/Threads.c                                      |  77 +++---
  rts/package.conf.in                                |   2 -
  rts/sm/Storage.c                                   |   6 -
  rts/win32/libHSbase.def                            |   1 -
  testsuite/tests/concurrent/should_run/all.T        |   7 -
  .../tests/concurrent/should_run/allocLimit1.hs     |   9 -
  .../tests/concurrent/should_run/allocLimit1.stderr |   1 -
  .../tests/concurrent/should_run/allocLimit2.hs     |  17 --
  .../tests/concurrent/should_run/allocLimit3.hs     |  15 --
  .../tests/concurrent/should_run/allocLimit3.stderr |   1 -
  .../tests/concurrent/should_run/allocLimit3.stdout |   1 -
  .../tests/concurrent/should_run/allocLimit4.hs     |  31 ---
  utils/deriveConstants/DeriveConstants.hs           |   1 -
  33 files changed, 144 insertions(+), 578 deletions(-)

Diff suppressed because of size. To see it, use:

     git diff-tree --root --patch-with-stat --no-color
--find-copies-harder --ignore-space-at-eol --cc
f0fcc41d755876a1b02d1c7c79f57515059f6417
_______________________________________________
ghc-commits mailing list
ghc-comm...@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-commits



_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to