diff options
author | Mike Snitzer <snitzer@redhat.com> | 2009-07-23 15:30:42 -0400 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2009-07-23 15:30:42 -0400 |
commit | 5dea271b6d87bd1d79a59c1d5baac2596a841c37 (patch) | |
tree | c85bcee4f90729927285fc282c6df94bf18d023d /drivers/md/dm-raid1.c | |
parent | a732c207d19e899845ae47139708af898daaf9fd (diff) |
dm table: pass correct dev area size to device_area_is_valid
Incorrect device area lengths are being passed to device_area_is_valid().
The regression appeared in 2.6.31-rc1 through commit
754c5fc7ebb417b23601a6222a6005cc2e7f2913.
With the dm-stripe target, the size of the target (ti->len) was used
instead of the stripe_width (ti->len/#stripes). An example of a
consequent incorrect error message is:
device-mapper: table: 254:0: sdb too small for target
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'drivers/md/dm-raid1.c')
-rw-r--r-- | drivers/md/dm-raid1.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/dm-raid1.c b/drivers/md/dm-raid1.c index 42a3e4341d60..9726577cde49 100644 --- a/drivers/md/dm-raid1.c +++ b/drivers/md/dm-raid1.c | |||
@@ -1293,7 +1293,7 @@ static int mirror_iterate_devices(struct dm_target *ti, | |||
1293 | 1293 | ||
1294 | for (i = 0; !ret && i < ms->nr_mirrors; i++) | 1294 | for (i = 0; !ret && i < ms->nr_mirrors; i++) |
1295 | ret = fn(ti, ms->mirror[i].dev, | 1295 | ret = fn(ti, ms->mirror[i].dev, |
1296 | ms->mirror[i].offset, data); | 1296 | ms->mirror[i].offset, ti->len, data); |
1297 | 1297 | ||
1298 | return ret; | 1298 | return ret; |
1299 | } | 1299 | } |