9/19

Joe Thornber
2002-12-16T10:05:01Z

queue_io() was checking the DMF_SUSPENDED flag rather than the new
DMF_BLOCK_IO flag. This meant suspend could deadlock under load.
--- diff/drivers/md/dm.c 2002-12-16 09:40:58.000000000 +0000
+++ source/drivers/md/dm.c 2002-12-16 09:41:03.000000000 +0000
@@ -206,7 +206,7 @@

down_write(&md->lock);

- if (!test_bit(DMF_SUSPENDED, &md->flags)) {
+ if (!test_bit(DMF_BLOCK_IO, &md->flags)) {
up_write(&md->lock);
free_deferred(di);
return 1;