nbd: Use set_blocksize() to set device blocksize
authorJan Kara <jack@suse.cz>
Mon, 14 Jan 2019 08:48:09 +0000 (09:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Jan 2019 07:10:57 +0000 (08:10 +0100)
commit c8a83a6b54d0ca078de036aafb3f6af58c1dc5eb upstream.

NBD can update block device block size implicitely through
bd_set_size(). Make it explicitely set blocksize with set_blocksize() as
this behavior of bd_set_size() is going away.

CC: Josef Bacik <jbacik@fb.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/block/nbd.c

index 2f4e5997cdb2225f16585a175561d07cbb828a8d..394f8ec83cf02444083688650688f8f9773f2b10 100644 (file)
@@ -120,6 +120,7 @@ static void nbd_size_update(struct nbd_device *nbd, struct block_device *bdev)
        blk_queue_logical_block_size(nbd->disk->queue, nbd->blksize);
        blk_queue_physical_block_size(nbd->disk->queue, nbd->blksize);
        bd_set_size(bdev, nbd->bytesize);
+       set_blocksize(bdev, nbd->blksize);
        set_capacity(nbd->disk, nbd->bytesize >> 9);
        kobject_uevent(&nbd_to_dev(nbd)->kobj, KOBJ_CHANGE);
 }