diff options
author | 2020-05-29 16:24:43 +0200 | |
---|---|---|
committer | 2020-06-15 09:18:46 +0200 | |
commit | 5fcd57505c002efc5823a7355e21f48dd02d5a51 (patch) | |
tree | 3841b53ef7831553de2c7bf40b3c673f1fd263b4 /fs/ext4 | |
parent | writeback: Fix sync livelock due to b_dirty_time processing (diff) | |
download | linux-5fcd57505c002efc5823a7355e21f48dd02d5a51.tar.gz linux-5fcd57505c002efc5823a7355e21f48dd02d5a51.tar.bz2 linux-5fcd57505c002efc5823a7355e21f48dd02d5a51.zip |
writeback: Drop I_DIRTY_TIME_EXPIRE
The only use of I_DIRTY_TIME_EXPIRE is to detect in
__writeback_single_inode() that inode got there because flush worker
decided it's time to writeback the dirty inode time stamps (either
because we are syncing or because of age). However we can detect this
directly in __writeback_single_inode() and there's no need for the
strange propagation with I_DIRTY_TIME_EXPIRE flag.
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 40ec5c7ef0d3..4db497f02ffb 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -4887,7 +4887,7 @@ static void __ext4_update_other_inode_time(struct super_block *sb, (inode->i_state & I_DIRTY_TIME)) { struct ext4_inode_info *ei = EXT4_I(inode); - inode->i_state &= ~(I_DIRTY_TIME | I_DIRTY_TIME_EXPIRED); + inode->i_state &= ~I_DIRTY_TIME; spin_unlock(&inode->i_lock); spin_lock(&ei->i_raw_lock); |