On Thu 29-02-24 19:54:13, Ritesh Harjani (IBM) wrote: > Since commit a2ad63daa88b ("VFS: add FMODE_CAN_ODIRECT file flag") file > systems can just set the FMODE_CAN_ODIRECT flag at open time instead of > wiring up a dummy direct_IO method to indicate support for direct I/O. > > Signed-off-by: Ritesh Harjani (IBM) <ritesh.list@xxxxxxxxx> Thanks. I'll take this into my tree once the merge window closes. Honza > --- > fs/ext2/file.c | 8 +++++++- > fs/ext2/inode.c | 2 -- > 2 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/fs/ext2/file.c b/fs/ext2/file.c > index 4ddc36f4dbd4..10b061ac5bc0 100644 > --- a/fs/ext2/file.c > +++ b/fs/ext2/file.c > @@ -302,6 +302,12 @@ static ssize_t ext2_file_write_iter(struct kiocb *iocb, struct iov_iter *from) > return generic_file_write_iter(iocb, from); > } > > +static int ext2_file_open(struct inode *inode, struct file *filp) > +{ > + filp->f_mode |= FMODE_CAN_ODIRECT; > + return dquot_file_open(inode, filp); > +} > + > const struct file_operations ext2_file_operations = { > .llseek = generic_file_llseek, > .read_iter = ext2_file_read_iter, > @@ -311,7 +317,7 @@ const struct file_operations ext2_file_operations = { > .compat_ioctl = ext2_compat_ioctl, > #endif > .mmap = ext2_file_mmap, > - .open = dquot_file_open, > + .open = ext2_file_open, > .release = ext2_release_file, > .fsync = ext2_fsync, > .get_unmapped_area = thp_get_unmapped_area, > diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c > index 5a4272b2c6b0..6f719d784eb9 100644 > --- a/fs/ext2/inode.c > +++ b/fs/ext2/inode.c > @@ -965,7 +965,6 @@ const struct address_space_operations ext2_aops = { > .write_begin = ext2_write_begin, > .write_end = ext2_write_end, > .bmap = ext2_bmap, > - .direct_IO = noop_direct_IO, > .writepages = ext2_writepages, > .migrate_folio = buffer_migrate_folio, > .is_partially_uptodate = block_is_partially_uptodate, > @@ -974,7 +973,6 @@ const struct address_space_operations ext2_aops = { > > static const struct address_space_operations ext2_dax_aops = { > .writepages = ext2_dax_writepages, > - .direct_IO = noop_direct_IO, > .dirty_folio = noop_dirty_folio, > }; > > -- > 2.39.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR