evict() writes out what I_METADATA_WRITEBACK tracks before it calls ->evict_inode() and since mmb_mark_buffer_dirty() sets the bit that includes the tracked metadata buffers. So there's nothing left for ext2_evict_inode() to sync. Signed-off-by: Christian Brauner (Amutable) --- fs/ext2/inode.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c index 9261b666d043..4c38a3a8ea4d 100644 --- a/fs/ext2/inode.c +++ b/fs/ext2/inode.c @@ -91,8 +91,6 @@ void ext2_evict_inode(struct inode * inode) if (inode->i_blocks) ext2_truncate_blocks(inode, 0); ext2_xattr_delete_inode(inode); - } else { - mmb_sync(&EXT2_I(inode)->i_metadata_bhs); } mmb_invalidate(&EXT2_I(inode)->i_metadata_bhs); clear_inode(inode); -- 2.53.0