diff options
Diffstat (limited to 'rts/RtsUtils.c')
-rw-r--r-- | rts/RtsUtils.c | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/rts/RtsUtils.c b/rts/RtsUtils.c index 31dc060244..85f951addd 100644 --- a/rts/RtsUtils.c +++ b/rts/RtsUtils.c @@ -131,13 +131,11 @@ stgFree(void* p) } /* ----------------------------------------------------------------------------- - Stack overflow - - Not sure if this belongs here. + Stack/heap overflow -------------------------------------------------------------------------- */ void -stackOverflow(StgTSO* tso) +reportStackOverflow(StgTSO* tso) { rtsConfig.stackOverflowHook(tso->tot_stack_size * sizeof(W_)); @@ -147,16 +145,11 @@ stackOverflow(StgTSO* tso) } void -heapOverflow(void) +reportHeapOverflow(void) { - if (!heap_overflow) - { - /* don't fflush(stdout); WORKAROUND bug in Linux glibc */ - rtsConfig.outOfHeapHook(0/*unknown request size*/, - (W_)RtsFlags.GcFlags.maxHeapSize * BLOCK_SIZE); - - heap_overflow = true; - } + /* don't fflush(stdout); WORKAROUND bug in Linux glibc */ + rtsConfig.outOfHeapHook(0/*unknown request size*/, + (W_)RtsFlags.GcFlags.maxHeapSize * BLOCK_SIZE); } /* ----------------------------------------------------------------------------- @@ -351,4 +344,3 @@ void checkFPUStack(void) } #endif } - |