Skip to content

Commit

Permalink
cgroup: Fix css_task_iter_advance_css_set() cset skip condition
Browse files Browse the repository at this point in the history
commit c596687 upstream.

While adding handling for dying task group leaders c03cd77
("cgroup: Include dying leaders with live threads in PROCS
iterations") added an inverted cset skip condition to
css_task_iter_advance_css_set().  It should skip cset if it's
completely empty but was incorrectly testing for the inverse condition
for the dying_tasks list.  Fix it.

Signed-off-by: Tejun Heo <tj@kernel.org>
Fixes: c03cd77 ("cgroup: Include dying leaders with live threads in PROCS iterations")
Reported-by: syzbot+d4bba5ccd4f9a2a68681@syzkaller.appspotmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Tejun Heo authored and Greg Kroah-Hartman committed Aug 9, 2019
1 parent 0a9abd2 commit ebda41d
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion kernel/cgroup/cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -4154,7 +4154,7 @@ static void css_task_iter_advance_css_set(struct css_task_iter *it)
it->task_pos = NULL;
return;
}
} while (!css_set_populated(cset) && !list_empty(&cset->dying_tasks));
} while (!css_set_populated(cset) && list_empty(&cset->dying_tasks));

if (!list_empty(&cset->tasks))
it->task_pos = cset->tasks.next;
Expand Down

0 comments on commit ebda41d

Please sign in to comment.