diff options
author | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2013-03-14 09:24:32 +0900 |
---|---|---|
committer | Andreas Blaesius <skate4life@gmx.de> | 2016-06-05 21:20:06 +0200 |
commit | 79a6563fa8823fd844b72983e51bec6cb61ab3b5 (patch) | |
tree | ff2c3ff65ad03e047572e4add9d657fad7e36a15 /fs/f2fs/node.c | |
parent | ad68a3e561ef2589f57fc6923d6a62f926e4d06f (diff) | |
download | kernel_samsung_espresso10-79a6563fa8823fd844b72983e51bec6cb61ab3b5.zip kernel_samsung_espresso10-79a6563fa8823fd844b72983e51bec6cb61ab3b5.tar.gz kernel_samsung_espresso10-79a6563fa8823fd844b72983e51bec6cb61ab3b5.tar.bz2 |
f2fs: fix return value of releasepage for node and data
If the return value of releasepage is equal to zero, the page cannot be reclaimed.
Instead, we should return 1 in order to reclaim clean pages.
Reviewed-by: Namjae Jeon <namjae.jeon@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs/f2fs/node.c')
-rw-r--r-- | fs/f2fs/node.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c index 94951d9..bf9172b 100644 --- a/fs/f2fs/node.c +++ b/fs/f2fs/node.c @@ -933,7 +933,6 @@ struct page *get_node_page_ra(struct page *parent, int start) if (!nid) return ERR_PTR(-ENOENT); -repeat: page = grab_cache_page(mapping, nid); if (!page) return ERR_PTR(-ENOMEM); @@ -961,12 +960,6 @@ page_hit: f2fs_put_page(page, 1); return ERR_PTR(-EIO); } - - /* Has the page been truncated? */ - if (page->mapping != mapping) { - f2fs_put_page(page, 1); - goto repeat; - } mark_page_accessed(page); return page; } @@ -1189,7 +1182,7 @@ static void f2fs_invalidate_node_page(struct page *page, unsigned long offset) static int f2fs_release_node_page(struct page *page, gfp_t wait) { ClearPagePrivate(page); - return 0; + return 1; } /* @@ -1630,8 +1623,6 @@ flush_now: write_lock(&nm_i->nat_tree_lock); __del_from_nat_cache(nm_i, ne); write_unlock(&nm_i->nat_tree_lock); - - /* We can reuse this freed nid at this point */ add_free_nid(NM_I(sbi), nid); } else { write_lock(&nm_i->nat_tree_lock); |