[PATCH 1/4] f2fs: give scheduling point in shrinking path

From: Jaegeuk Kim
Date: Sat Jan 23 2016 - 15:16:55 EST


It needs to give a chance to be rescheduled while shrinking slab entries.

Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
---
fs/f2fs/extent_cache.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/fs/f2fs/extent_cache.c b/fs/f2fs/extent_cache.c
index ccd5c63..325825b 100644
--- a/fs/f2fs/extent_cache.c
+++ b/fs/f2fs/extent_cache.c
@@ -585,6 +585,8 @@ unsigned int f2fs_shrink_extent_tree(struct f2fs_sb_info *sbi, int nr_shrink)

if (node_cnt + tree_cnt >= nr_shrink)
goto unlock_out;
+
+ cond_resched();
}
up_write(&sbi->extent_tree_lock);

@@ -631,6 +633,7 @@ free_node:
if (node_cnt + tree_cnt >= nr_shrink)
goto unlock_out;
}
+ cond_resched();
}
unlock_out:
up_write(&sbi->extent_tree_lock);
--
2.6.3