Commit 11b32219 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'pull-old-dio' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull legacy dio cleanup from Al Viro.

* tag 'pull-old-dio' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  __blockdev_direct_IO(): get rid of submit_io callback
parents 0e497ad5 0aaf08de
...@@ -86,7 +86,6 @@ struct dio_submit { ...@@ -86,7 +86,6 @@ struct dio_submit {
sector_t final_block_in_request;/* doesn't change */ sector_t final_block_in_request;/* doesn't change */
int boundary; /* prev block is at a boundary */ int boundary; /* prev block is at a boundary */
get_block_t *get_block; /* block mapping function */ get_block_t *get_block; /* block mapping function */
dio_submit_t *submit_io; /* IO submition function */
loff_t logical_offset_in_bio; /* current first logical block in bio */ loff_t logical_offset_in_bio; /* current first logical block in bio */
sector_t final_block_in_bio; /* current final block in bio + 1 */ sector_t final_block_in_bio; /* current final block in bio + 1 */
...@@ -431,10 +430,7 @@ static inline void dio_bio_submit(struct dio *dio, struct dio_submit *sdio) ...@@ -431,10 +430,7 @@ static inline void dio_bio_submit(struct dio *dio, struct dio_submit *sdio)
dio->bio_disk = bio->bi_bdev->bd_disk; dio->bio_disk = bio->bi_bdev->bd_disk;
if (sdio->submit_io) submit_bio(bio);
sdio->submit_io(bio, dio->inode, sdio->logical_offset_in_bio);
else
submit_bio(bio);
sdio->bio = NULL; sdio->bio = NULL;
sdio->boundary = 0; sdio->boundary = 0;
...@@ -1098,7 +1094,7 @@ static inline int drop_refcount(struct dio *dio) ...@@ -1098,7 +1094,7 @@ static inline int drop_refcount(struct dio *dio)
ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode, ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
struct block_device *bdev, struct iov_iter *iter, struct block_device *bdev, struct iov_iter *iter,
get_block_t get_block, dio_iodone_t end_io, get_block_t get_block, dio_iodone_t end_io,
dio_submit_t submit_io, int flags) int flags)
{ {
unsigned i_blkbits = READ_ONCE(inode->i_blkbits); unsigned i_blkbits = READ_ONCE(inode->i_blkbits);
unsigned blkbits = i_blkbits; unsigned blkbits = i_blkbits;
...@@ -1215,7 +1211,6 @@ ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode, ...@@ -1215,7 +1211,6 @@ ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
sdio.get_block = get_block; sdio.get_block = get_block;
dio->end_io = end_io; dio->end_io = end_io;
sdio.submit_io = submit_io;
sdio.final_block_in_bio = -1; sdio.final_block_in_bio = -1;
sdio.next_block_for_io = -1; sdio.next_block_for_io = -1;
......
...@@ -2463,7 +2463,7 @@ static ssize_t ocfs2_direct_IO(struct kiocb *iocb, struct iov_iter *iter) ...@@ -2463,7 +2463,7 @@ static ssize_t ocfs2_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev, return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev,
iter, get_block, iter, get_block,
ocfs2_dio_end_io, NULL, 0); ocfs2_dio_end_io, 0);
} }
const struct address_space_operations ocfs2_aops = { const struct address_space_operations ocfs2_aops = {
......
...@@ -2780,7 +2780,7 @@ enum { ...@@ -2780,7 +2780,7 @@ enum {
ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode, ssize_t __blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
struct block_device *bdev, struct iov_iter *iter, struct block_device *bdev, struct iov_iter *iter,
get_block_t get_block, get_block_t get_block,
dio_iodone_t end_io, dio_submit_t submit_io, dio_iodone_t end_io,
int flags); int flags);
static inline ssize_t blockdev_direct_IO(struct kiocb *iocb, static inline ssize_t blockdev_direct_IO(struct kiocb *iocb,
...@@ -2789,7 +2789,7 @@ static inline ssize_t blockdev_direct_IO(struct kiocb *iocb, ...@@ -2789,7 +2789,7 @@ static inline ssize_t blockdev_direct_IO(struct kiocb *iocb,
get_block_t get_block) get_block_t get_block)
{ {
return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev, iter, return __blockdev_direct_IO(iocb, inode, inode->i_sb->s_bdev, iter,
get_block, NULL, NULL, DIO_LOCKING | DIO_SKIP_HOLES); get_block, NULL, DIO_LOCKING | DIO_SKIP_HOLES);
} }
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment