From 6e4656cc95ad504a42080bcaf8afc80fec7be2d6 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Thu, 7 Nov 2019 11:45:21 -0500 Subject: rts/nonmoving: Catch failure of createOSThread --- rts/sm/NonMoving.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'rts') diff --git a/rts/sm/NonMoving.c b/rts/sm/NonMoving.c index 50cf784aab..20ec5a45ba 100644 --- a/rts/sm/NonMoving.c +++ b/rts/sm/NonMoving.c @@ -896,8 +896,10 @@ void nonmovingCollect(StgWeak **dead_weaks, StgTSO **resurrected_threads) concurrent_coll_running = true; nonmoving_write_barrier_enabled = true; debugTrace(DEBUG_nonmoving_gc, "Starting concurrent mark thread"); - createOSThread(&mark_thread, "non-moving mark thread", - nonmovingConcurrentMark, mark_queue); + if (createOSThread(&mark_thread, "non-moving mark thread", + nonmovingConcurrentMark, mark_queue) != 0) { + barf("nonmovingCollect: failed to spawn mark thread: %s", strerror(errno)); + } } else { nonmovingConcurrentMark(mark_queue); } -- cgit v1.2.1