summaryrefslogtreecommitdiffstats
path: root/drivers/md/dm-snap.c
diff options
context:
space:
mode:
authorMilan Broz <mbroz@redhat.com>2011-03-24 13:52:14 +0000
committerAlasdair G Kergon <agk@redhat.com>2011-03-24 13:52:14 +0000
commit024d37e95ec4a7ccc256973ab2feab01f4fbdd2d (patch)
treef81ce3ac56c911577942b8404ed45a980c321621 /drivers/md/dm-snap.c
parent4bbba111d94781d34081c37856bbc5eb33f6c72a (diff)
downloadlinux-024d37e95ec4a7ccc256973ab2feab01f4fbdd2d.tar.gz
linux-024d37e95ec4a7ccc256973ab2feab01f4fbdd2d.tar.bz2
linux-024d37e95ec4a7ccc256973ab2feab01f4fbdd2d.zip
dm: fix opening log and cow devices for read only tables
If a table is read-only, also open any log and cow devices it uses read-only. Previously, even read-only devices were opened read-write internally. After patch 75f1dc0d076d1c1168f2115f1941ea627d38bd5a block: check bdev_read_only() from blkdev_get() was applied, loading such tables began to fail. The patch was reverted by e51900f7d38cbcfb481d84567fd92540e7e1d23a block: revert block_dev read-only check but this patch fixes this part of the code to work with the original patch. Signed-off-by: Milan Broz <mbroz@redhat.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'drivers/md/dm-snap.c')
-rw-r--r--drivers/md/dm-snap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c
index fdde53cd12b7..a2d330942cb2 100644
--- a/drivers/md/dm-snap.c
+++ b/drivers/md/dm-snap.c
@@ -1080,7 +1080,7 @@ static int snapshot_ctr(struct dm_target *ti, unsigned int argc, char **argv)
argv++;
argc--;
- r = dm_get_device(ti, cow_path, FMODE_READ | FMODE_WRITE, &s->cow);
+ r = dm_get_device(ti, cow_path, dm_table_get_mode(ti->table), &s->cow);
if (r) {
ti->error = "Cannot get COW device";
goto bad_cow;