f2fs: avoid freqeunt write_inode calls
[linux-block.git] / fs / f2fs / inode.c
index b44a4c1194eae3777fd7630fae217f1c82da706b..2b2d45d19e3ea1e1101ff893a2ce9e0f19e607ea 100644 (file)
@@ -192,6 +192,7 @@ void update_inode(struct inode *inode, struct page *node_page)
 
        set_cold_node(inode, node_page);
        set_page_dirty(node_page);
+       clear_inode_flag(F2FS_I(inode), FI_DIRTY_INODE);
 }
 
 int update_inode_page(struct inode *inode)
@@ -217,6 +218,9 @@ int f2fs_write_inode(struct inode *inode, struct writeback_control *wbc)
                        inode->i_ino == F2FS_META_INO(sbi))
                return 0;
 
+       if (!is_inode_flag_set(F2FS_I(inode), FI_DIRTY_INODE))
+               return 0;
+
        if (wbc)
                f2fs_balance_fs(sbi);