From: Vivek Goyal <vgoyal@redhat.com>
Subject: virtio-blk: Call revalidate_disk() upon online disk resize
References: bnc#817339
Patch-mainline: v3.4
Git-commit: e9986f303dc0f285401de28cf96f42f4dd23a4a1

If a virtio disk is open in guest and a disk resize operation is done,
(virsh blockresize), new size is not visible to tools like "fdisk -l".
This seems to be happening as we update only part->nr_sects and not
bdev->bd_inode size.

Call revalidate_disk() which should take care of it. I tested growing disk
size of already open disk and it works for me.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>

Acked-by: Ankit Jain <jankit@suse.com>

---
 drivers/block/virtio_blk.c |    1 +
 1 file changed, 1 insertion(+)

Index: b/drivers/block/virtio_blk.c
===================================================================
--- a/drivers/block/virtio_blk.c
+++ b/drivers/block/virtio_blk.c
@@ -339,6 +339,7 @@ static void virtblk_config_changed_work(
 		  cap_str_10, cap_str_2);
 
 	set_capacity(vblk->disk, capacity);
+	revalidate_disk(vblk->disk);
 }
 
 static void virtblk_config_changed(struct virtio_device *vdev)
