diff options
author | Jan Kara <jack@suse.cz> | 2016-04-24 06:56:07 +0200 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2016-04-24 06:56:07 +0200 |
commit | 41617e1a8dec9fe082ba5dec26bacb154eb55482 (patch) | |
tree | cad9847e725526c8af355f116ec5cf317dc2d24c /fs/ocfs2 | |
parent | ext4: remove EXT4_STATE_ORDERED_MODE (diff) | |
download | linux-41617e1a8dec9fe082ba5dec26bacb154eb55482.tar.xz linux-41617e1a8dec9fe082ba5dec26bacb154eb55482.zip |
jbd2: add support for avoiding data writes during transaction commits
Currently when filesystem needs to make sure data is on permanent
storage before committing a transaction it adds inode to transaction's
inode list. During transaction commit, jbd2 writes back all dirty
buffers that have allocated underlying blocks and waits for the IO to
finish. However when doing writeback for delayed allocated data, we
allocate blocks and immediately submit the data. Thus asking jbd2 to
write dirty pages just unnecessarily adds more work to jbd2 possibly
writing back other redirtied blocks.
Add support to jbd2 to allow filesystem to ask jbd2 to only wait for
outstanding data writes before committing a transaction and thus avoid
unnecessary writes.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ocfs2')
-rw-r--r-- | fs/ocfs2/journal.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ocfs2/journal.h b/fs/ocfs2/journal.h index f4cd3c3e9fb7..497a4171ef61 100644 --- a/fs/ocfs2/journal.h +++ b/fs/ocfs2/journal.h @@ -619,7 +619,7 @@ static inline int ocfs2_calc_tree_trunc_credits(struct super_block *sb, static inline int ocfs2_jbd2_file_inode(handle_t *handle, struct inode *inode) { - return jbd2_journal_file_inode(handle, &OCFS2_I(inode)->ip_jinode); + return jbd2_journal_inode_add_write(handle, &OCFS2_I(inode)->ip_jinode); } static inline int ocfs2_begin_ordered_truncate(struct inode *inode, |