diff mbox

[2/6] f2fs: give scheduling point in shrinking path

Message ID 1453759531-16076-2-git-send-email-jaegeuk@kernel.org (mailing list archive)
State New, archived
Headers show

Commit Message

Jaegeuk Kim Jan. 25, 2016, 10:05 p.m. UTC
It needs to give a chance to be rescheduled while shrinking slab entries.

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

Patch

diff --git a/fs/f2fs/extent_cache.c b/fs/f2fs/extent_cache.c
index 18311ff..af53503 100644
--- a/fs/f2fs/extent_cache.c
+++ b/fs/f2fs/extent_cache.c
@@ -593,6 +593,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);
 
@@ -622,6 +624,7 @@  free_node:
 		__detach_extent_node(sbi, en->et, en);
 		write_unlock(&en->et->lock);
 		kmem_cache_free(extent_node_slab, en);
+		cond_resched();
 	}
 
 unlock_out: