From: Matias Bjørling Date: Mon, 31 Aug 2015 12:17:31 +0000 (+0200) Subject: null_blk: fix wrong capacity when bs is not 512 bytes X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=5fdb7e1b976dc9d18aff8c711e51d17c4c324a0e;p=linux-beck.git null_blk: fix wrong capacity when bs is not 512 bytes set_capacity() sets device's capacity using 512 bytes sectors. null_blk calculates the number of sectors by size / bs, which set_capacity is called with. This led to null_blk exposing the wrong number of sectors when bs is not 512 bytes. Signed-off-by: Matias Bjørling Reviewed-by: Ross Zwisler Signed-off-by: Jens Axboe --- diff --git a/drivers/block/null_blk.c b/drivers/block/null_blk.c index d394a85aa92e..a295b98c6bae 100644 --- a/drivers/block/null_blk.c +++ b/drivers/block/null_blk.c @@ -589,8 +589,7 @@ static int null_add_dev(void) blk_queue_physical_block_size(nullb->q, bs); size = gb * 1024 * 1024 * 1024ULL; - sector_div(size, bs); - set_capacity(disk, size); + set_capacity(disk, size >> 9); disk->flags |= GENHD_FL_EXT_DEVT | GENHD_FL_SUPPRESS_PARTITION_INFO; disk->major = null_major;