summaryrefslogtreecommitdiff
path: root/rts/sm/GC.c
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-06-16 12:22:56 -0400
committerBen Gamari <ben@smart-cactus.org>2019-10-22 12:18:33 -0400
commit7b79e8b49bb5fef06f0f7d86611bc8eb2be30c62 (patch)
tree05e07ef6b1ec3fcdb371773333637b06f563435a /rts/sm/GC.c
parent13dd78ddb158f98b35ad2eda50d0a7af63920ece (diff)
downloadhaskell-7b79e8b49bb5fef06f0f7d86611bc8eb2be30c62.tar.gz
Disable aging when doing deadlock detection GC
Diffstat (limited to 'rts/sm/GC.c')
-rw-r--r--rts/sm/GC.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/rts/sm/GC.c b/rts/sm/GC.c
index 1df6ace800..a97042c718 100644
--- a/rts/sm/GC.c
+++ b/rts/sm/GC.c
@@ -104,6 +104,7 @@
*/
uint32_t N;
bool major_gc;
+bool deadlock_detect_gc;
/* Data used for allocation area sizing.
*/
@@ -194,6 +195,7 @@ StgPtr mark_sp; // pointer to the next unallocated mark stack entry
void
GarbageCollect (uint32_t collect_gen,
const bool do_heap_census,
+ const bool deadlock_detect,
uint32_t gc_type USED_IF_THREADS,
Capability *cap,
bool idle_cap[])
@@ -263,6 +265,9 @@ GarbageCollect (uint32_t collect_gen,
N = collect_gen;
major_gc = (N == RtsFlags.GcFlags.generations-1);
+ /* See Note [Deadlock detection under nonmoving collector]. */
+ deadlock_detect_gc = deadlock_detect;
+
/* N.B. The nonmoving collector works a bit differently. See
* Note [Static objects under the nonmoving collector].
*/