summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Brassow <jbrassow@redhat.com>2007-05-09 11:33:08 +0200
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-09 21:30:48 +0200
commitb997b82d266c9fb910fc2ad95b9bb93b3bccf9be (patch)
treee6f9b05361b4d15d6ce3ac21f11e69f7809d1780
parentdm raid1: fix to commit pending clear region requests (diff)
downloadlinux-b997b82d266c9fb910fc2ad95b9bb93b3bccf9be.tar.xz
linux-b997b82d266c9fb910fc2ad95b9bb93b3bccf9be.zip
dm raid1: switch rh_in_sync to blocking in do_reads
The call to rh_in_sync() in do_reads() should be allowed to block. It is in the mirror worker thread which already permits blocking operations. This will be needed to support clustered mirroring which will perform network operations. 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>
-rw-r--r--drivers/md/dm-raid1.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/dm-raid1.c b/drivers/md/dm-raid1.c
index 85d254edd9be..ef124b71ccc8 100644
--- a/drivers/md/dm-raid1.c
+++ b/drivers/md/dm-raid1.c
@@ -741,7 +741,7 @@ static void do_reads(struct mirror_set *ms, struct bio_list *reads)
/*
* We can only read balance if the region is in sync.
*/
- if (rh_in_sync(&ms->rh, region, 0))
+ if (rh_in_sync(&ms->rh, region, 1))
m = choose_mirror(ms, bio->bi_sector);
else
m = ms->default_mirror;