diff mbox series

block: use new bdev_nr_bytes() helper for blkdev_{read,write}_iter()

Message ID a72767cd-3c6d-47f7-80f4-aa025a17b2cb@kernel.dk (mailing list archive)
State New, archived
Headers show
Series block: use new bdev_nr_bytes() helper for blkdev_{read,write}_iter() | expand

Commit Message

Jens Axboe Nov. 4, 2021, 9:13 p.m. UTC
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 <axboe@kernel.dk>

---

Comments

Christoph Hellwig Nov. 5, 2021, 5:41 a.m. UTC | #1
On Thu, Nov 04, 2021 at 03:13:17PM -0600, Jens Axboe wrote:
> 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 <axboe@kernel.dk>

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>
diff mbox series

Patch

diff --git a/block/fops.c b/block/fops.c
index a2f492e50782..d5de5451fb08 100644
--- a/block/fops.c
+++ b/block/fops.c
@@ -527,7 +527,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;
@@ -565,7 +565,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;