Skip to content

Commit

Permalink
dm raid1: fix to commit pending clear region requests
Browse files Browse the repository at this point in the history
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 <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Jonathan Brassow authored and Linus Torvalds committed May 9, 2007
1 parent 26b9f22 commit f5353cd
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions drivers/md/dm-raid1.c
Original file line number Diff line number Diff line change
Expand Up @@ -405,8 +405,7 @@ static void rh_update_states(struct region_hash *rh)
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);
Expand Down

0 comments on commit f5353cd

Please sign in to comment.