summaryrefslogtreecommitdiffstats
path: root/fs/fs-writeback.c
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2020-05-25 10:12:15 +0200
committerTheodore Ts'o <tytso@mit.edu>2020-06-04 05:16:56 +0200
commit6b8ed62008a49751fc71fefd2a4f89202a7c2d4d (patch)
treeb951c494c7e143086200904852bc48edae3c3140 /fs/fs-writeback.c
parentext4: don't block for O_DIRECT if IOCB_NOWAIT is set (diff)
downloadlinux-6b8ed62008a49751fc71fefd2a4f89202a7c2d4d.tar.xz
linux-6b8ed62008a49751fc71fefd2a4f89202a7c2d4d.zip
ext4: avoid unnecessary transaction starts during writeback
ext4_writepages() currently works in a loop like: start a transaction scan inode for pages to write map and submit these pages stop the transaction This loop results in starting transaction once more than is needed because in the last iteration we start a transaction only to scan the inode and find there are no pages to write. This can be significant increase in number of transaction starts for single-extent files or files that have all blocks already mapped. Furthermore we already know from previous iteration whether there are more pages to write or not. So propagate the information from mpage_prepare_extent_to_map() and avoid unnecessary looping in case there are no more pages to write. Signed-off-by: Jan Kara <jack@suse.cz> Link: https://lore.kernel.org/r/20200525081215.29451-1-jack@suse.cz Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/fs-writeback.c')
0 files changed, 0 insertions, 0 deletions