From: Jens Axboe Date: Thu, 4 Nov 2021 21:13:17 +0000 (-0600) Subject: block: use new bdev_nr_bytes() helper for blkdev_{read,write}_iter() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=138c1a38113d989416df57e9f8973c10c9e1fa04;p=linux.git block: use new bdev_nr_bytes() helper for blkdev_{read,write}_iter() We have new helpers for this, use them rather than the slower inode size reads. This makes the read/write path consistent with most of the rest of block as well. Signed-off-by: Jens Axboe Reviewed-by: Christoph Hellwig Link: https://lore.kernel.org/r/a72767cd-3c6d-47f7-80f4-aa025a17b2cb@kernel.dk Signed-off-by: Jens Axboe --- diff --git a/block/fops.c b/block/fops.c index 2ae8a7bd2b84a..e6c5b35aa5a5f 100644 --- a/block/fops.c +++ b/block/fops.c @@ -460,7 +460,7 @@ static ssize_t blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from) { struct block_device *bdev = iocb->ki_filp->private_data; struct inode *bd_inode = bdev->bd_inode; - loff_t size = i_size_read(bd_inode); + loff_t size = bdev_nr_bytes(bdev); struct blk_plug plug; size_t shorted = 0; ssize_t ret; @@ -498,7 +498,7 @@ static ssize_t blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from) static ssize_t blkdev_read_iter(struct kiocb *iocb, struct iov_iter *to) { struct block_device *bdev = iocb->ki_filp->private_data; - loff_t size = i_size_read(bdev->bd_inode); + loff_t size = bdev_nr_bytes(bdev); loff_t pos = iocb->ki_pos; size_t shorted = 0; ssize_t ret;