rts: Allow for infinite stack size
authorBen Gamari <bgamari.foss@gmail.com>
Sat, 7 Sep 2013 02:48:52 +0000 (22:48 -0400)
committerAustin Seipp <austin@well-typed.com>
Fri, 25 Oct 2013 14:14:29 +0000 (09:14 -0500)
This is encoded as RtsFlags.GcFlags.maxStkSize == 0.

rts/Threads.c

index 8ee8d4f..af4353f 100644 (file)
@@ -499,7 +499,8 @@ threadStackOverflow (Capability *cap, StgTSO *tso)
 
     IF_DEBUG(sanity,checkTSO(tso));
 
-    if (tso->tot_stack_size >= RtsFlags.GcFlags.maxStkSize) {
+    if (RtsFlags.GcFlags.maxStkSize > 0
+        && tso->tot_stack_size >= RtsFlags.GcFlags.maxStkSize) {
         // #3677: In a stack overflow situation, stack squeezing may
         // reduce the stack size, but we don't know whether it has been
         // reduced enough for the stack check to succeed if we try