dm: add cond_resched() to dm_wq_requeue_work()
Otherwise the while() loop in dm_wq_requeue_work() can result in a "dead loop" on systems that have preemption disabled. This is particularly problematic on single cpu systems. Fixes: 8b211aaccb915 ("dm: add two stage requeue mechanism") Cc: stable@vger.kernel.org Signed-off-by: Mike Snitzer <snitzer@kernel.org>
This commit is contained in:
parent
0ca44fcef2
commit
f77692d65d
@ -1009,6 +1009,7 @@ static void dm_wq_requeue_work(struct work_struct *work)
|
||||
io->next = NULL;
|
||||
__dm_io_complete(io, false);
|
||||
io = next;
|
||||
cond_resched();
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user