diff --git a/src/plugins/sched/backfill/backfill.c b/src/plugins/sched/backfill/backfill.c
index 53c8366fe827e768b1f9237d90b134a6b9b21fef..71ac92595a6bafc1436d1a93489e388a8073409b 100644
--- a/src/plugins/sched/backfill/backfill.c
+++ b/src/plugins/sched/backfill/backfill.c
@@ -332,7 +332,8 @@ static void _my_sleep(int secs)
 
 	ts.tv_sec = time(NULL) + secs;
 	pthread_mutex_lock(&term_lock);
-	pthread_cond_timedwait(&term_cond, &term_lock, &ts);
+	if (!stop_backfill)
+		pthread_cond_timedwait(&term_cond, &term_lock, &ts);
 	pthread_mutex_unlock(&term_lock);
 }