Commit aba54da3 authored by Artem Bityutskiy's avatar Artem Bityutskiy Committed by David Woodhouse

[JFFS2] add cond_resched() when garbage collecting deletion dirent

We observe soft lockups when doing heavy test which creates
directory with a lot of direntries and deletes them. This
cycle is the reason fo this. Make it nicer and add cond_resched()
inside of it.
Signed-off-by: default avatarArtem Bityutskiy <dedekind@infradead.org>
Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
parent 0bf3a9d8
...@@ -838,6 +838,8 @@ static int jffs2_garbage_collect_deletion_dirent(struct jffs2_sb_info *c, struct ...@@ -838,6 +838,8 @@ static int jffs2_garbage_collect_deletion_dirent(struct jffs2_sb_info *c, struct
for (raw = f->inocache->nodes; raw != (void *)f->inocache; raw = raw->next_in_ino) { for (raw = f->inocache->nodes; raw != (void *)f->inocache; raw = raw->next_in_ino) {
cond_resched();
/* We only care about obsolete ones */ /* We only care about obsolete ones */
if (!(ref_obsolete(raw))) if (!(ref_obsolete(raw)))
continue; continue;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment