diff options
author | Jaegeuk Kim <jaegeuk@kernel.org> | 2016-01-07 13:23:12 -0800 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2016-01-08 11:45:22 -0800 |
commit | 12719ae14e57980ebf0a7baa63bc80494c76b192 (patch) | |
tree | 3eaf9696743ec4b17e35f79cb4c1f39db3f7b6a8 /fs/f2fs/data.c | |
parent | 7612118ae8cdd36cbd74d873855d70252d2d49e3 (diff) | |
download | talos-obmc-linux-12719ae14e57980ebf0a7baa63bc80494c76b192.tar.gz talos-obmc-linux-12719ae14e57980ebf0a7baa63bc80494c76b192.zip |
f2fs: avoid unnecessary f2fs_balance_fs calls
Only when node page is newly dirtied, it needs to check whether we need to do
f2fs_gc.
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/data.c')
-rw-r--r-- | fs/f2fs/data.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 77c3bbb9bee0..3cf86fda8138 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -225,8 +225,8 @@ void set_data_blkaddr(struct dnode_of_data *dn) /* Get physical address of data block */ addr_array = blkaddr_in_node(rn); addr_array[ofs_in_node] = cpu_to_le32(dn->data_blkaddr); - set_page_dirty(node_page); - dn->node_changed = true; + if (set_page_dirty(node_page)) + dn->node_changed = true; } int reserve_new_block(struct dnode_of_data *dn) |