diff options
author | Jan Kara <jack@suse.cz> | 2016-05-13 00:44:16 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2016-05-13 00:44:16 -0400 |
commit | 914f82a32d026884743fb3de9f6f0a5908a9d5dd (patch) | |
tree | 7f56a9e69a6e6df90a27750c9bfc08a604a4ed10 /fs/ext4/ext4.h | |
parent | dbc427ce4028580f1244b5b57ca1cbea31aad1e7 (diff) |
ext4: refactor direct IO code
Currently ext4 direct IO handling is split between ext4_ext_direct_IO()
and ext4_ind_direct_IO(). However the extent based function calls into
the indirect based one for some cases and for example it is not able to
handle file extending. Previously it was not also properly handling
retries in case of ENOSPC errors. With DAX things would get even more
contrieved so just refactor the direct IO code and instead of indirect /
extent split do the split to read vs writes.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index ba5aecc07fbc..89e1bcb21341 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -2587,8 +2587,6 @@ extern int ext4_get_next_extent(struct inode *inode, ext4_lblk_t lblk, /* indirect.c */ extern int ext4_ind_map_blocks(handle_t *handle, struct inode *inode, struct ext4_map_blocks *map, int flags); -extern ssize_t ext4_ind_direct_IO(struct kiocb *iocb, struct iov_iter *iter, - loff_t offset); extern int ext4_ind_calc_metadata_amount(struct inode *inode, sector_t lblock); extern int ext4_ind_trans_blocks(struct inode *inode, int nrblocks); extern void ext4_ind_truncate(handle_t *, struct inode *inode); |