From: Jonathan Brassow With the code as it is, it is possible for oustanding clear region requests never to get flushed when a mirror is deactivated or suspended. This means there will always be some resync work required when a mirror is activated, even though it may very well be in-sync. Always requesting the flush doesn't hurt us. This is because the log tracks whether any changes occurred and, if not, no flush is performed. Signed-off-by: Jonathan Brassow Signed-off-by: Alasdair G Kergon --- drivers/md/dm-raid1.c | 3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) Index: linux-2.6.21/drivers/md/dm-raid1.c =================================================================== --- linux-2.6.21.orig/drivers/md/dm-raid1.c 2007-05-01 19:20:13.000000000 +0100 +++ linux-2.6.21/drivers/md/dm-raid1.c 2007-05-01 19:20:17.000000000 +0100 @@ -405,8 +405,7 @@ static void rh_update_states(struct regi mempool_free(reg, rh->region_pool); } - if (!list_empty(&recovered)) - rh->log->type->flush(rh->log); + rh->log->type->flush(rh->log); list_for_each_entry_safe (reg, next, &clean, list) mempool_free(reg, rh->region_pool);