summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/node.h
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2016-01-07 13:23:12 -0800
committerJaegeuk Kim <jaegeuk@kernel.org>2016-01-08 11:45:22 -0800
commit12719ae14e57980ebf0a7baa63bc80494c76b192 (patch)
tree3eaf9696743ec4b17e35f79cb4c1f39db3f7b6a8 /fs/f2fs/node.h
parent7612118ae8cdd36cbd74d873855d70252d2d49e3 (diff)
downloadlinux-12719ae14e57980ebf0a7baa63bc80494c76b192.tar.gz
linux-12719ae14e57980ebf0a7baa63bc80494c76b192.tar.bz2
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/node.h')
-rw-r--r--fs/f2fs/node.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/f2fs/node.h b/fs/f2fs/node.h
index 2de759a7746f..d4d1f636fe1c 100644
--- a/fs/f2fs/node.h
+++ b/fs/f2fs/node.h
@@ -317,7 +317,7 @@ static inline bool IS_DNODE(struct page *node_page)
return true;
}
-static inline void set_nid(struct page *p, int off, nid_t nid, bool i)
+static inline int set_nid(struct page *p, int off, nid_t nid, bool i)
{
struct f2fs_node *rn = F2FS_NODE(p);
@@ -327,7 +327,7 @@ static inline void set_nid(struct page *p, int off, nid_t nid, bool i)
rn->i.i_nid[off - NODE_DIR1_BLOCK] = cpu_to_le32(nid);
else
rn->in.nid[off] = cpu_to_le32(nid);
- set_page_dirty(p);
+ return set_page_dirty(p);
}
static inline nid_t get_nid(struct page *p, int off, bool i)