From: Al Viro Date: Thu, 11 Apr 2024 14:53:40 +0000 (+0100) Subject: blkdev_write_iter(): saner way to get inode and bdev X-Git-Tag: v6.10-rc1~78^2~15 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=39c3b4e7d0a0d8876f29ea078b978b3caa924542;p=thirdparty%2Fkernel%2Flinux.git blkdev_write_iter(): saner way to get inode and bdev ... same as in other methods - bdev_file_inode() and I_BDEV() of that. Signed-off-by: Al Viro Link: https://lore.kernel.org/r/20240411145346.2516848-5-viro@zeniv.linux.org.uk Signed-off-by: Christian Brauner --- diff --git a/block/fops.c b/block/fops.c index 679d9b752fe82..9d0f36688a5d4 100644 --- a/block/fops.c +++ b/block/fops.c @@ -668,8 +668,8 @@ static ssize_t blkdev_buffered_write(struct kiocb *iocb, struct iov_iter *from) static ssize_t blkdev_write_iter(struct kiocb *iocb, struct iov_iter *from) { struct file *file = iocb->ki_filp; - struct block_device *bdev = I_BDEV(file->f_mapping->host); - struct inode *bd_inode = bdev->bd_inode; + struct inode *bd_inode = bdev_file_inode(file); + struct block_device *bdev = I_BDEV(bd_inode); loff_t size = bdev_nr_bytes(bdev); size_t shorted = 0; ssize_t ret;