From f207938aceae0f9ccec241cc8f2bd07725d17025 Mon Sep 17 00:00:00 2001 From: Josh Durgin Date: Mon, 21 Nov 2011 17:13:54 -0800 Subject: [PATCH] --- yaml --- r: 320339 b: refs/heads/master c: 474ef7ce832d471148f63a9d07f67fc5564834f1 h: refs/heads/master i: 320337: df52f05481b661373bdc6eaa2d0fb2d60b47f2ea 320335: fd692652a1d42a8a6606d1c7b3615e5332176448 v: v3 --- [refs] | 2 +- trunk/drivers/block/rbd.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 428037604659..022f12d4f7dd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e88a36ec961b8c1899c59c5e4ae35a318c0209d3 +refs/heads/master: 474ef7ce832d471148f63a9d07f67fc5564834f1 diff --git a/trunk/drivers/block/rbd.c b/trunk/drivers/block/rbd.c index 730d0ce505e1..f171cebabda9 100644 --- a/trunk/drivers/block/rbd.c +++ b/trunk/drivers/block/rbd.c @@ -1725,7 +1725,12 @@ static int __rbd_refresh_header(struct rbd_device *rbd_dev) return ret; /* resized? */ - set_capacity(rbd_dev->disk, h.image_size / SECTOR_SIZE); + if (rbd_dev->snap_id == CEPH_NOSNAP) { + sector_t size = (sector_t) h.image_size / SECTOR_SIZE; + + dout("setting size to %llu sectors", (unsigned long long) size); + set_capacity(rbd_dev->disk, size); + } down_write(&rbd_dev->header_rwsem);