diff options
| -rw-r--r-- | drivers/md/dm-snap.c | 8 | 
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c index 54853773510..a6ab98920cc 100644 --- a/drivers/md/dm-snap.c +++ b/drivers/md/dm-snap.c @@ -1899,8 +1899,14 @@ static int snapshot_iterate_devices(struct dm_target *ti,  				    iterate_devices_callout_fn fn, void *data)  {  	struct dm_snapshot *snap = ti->private; +	int r; + +	r = fn(ti, snap->origin, 0, ti->len, data); -	return fn(ti, snap->origin, 0, ti->len, data); +	if (!r) +		r = fn(ti, snap->cow, 0, get_dev_size(snap->cow->bdev), data); + +	return r;  }  |