mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks()
Since commit c03cd7738a
("cgroup: Include dying leaders with live
threads in PROCS iterations") corrected how CSS_TASK_ITER_PROCS works,
mem_cgroup_scan_tasks() can use CSS_TASK_ITER_PROCS in order to check
only one thread from each thread group.
[penguin-kernel@I-love.SAKURA.ne.jp: remove thread group leader check in oom_evaluate_task()]
Link: http://lkml.kernel.org/r/1560853257-14934-1-git-send-email-penguin-kernel@I-love.SAKURA.ne.jp
Link: http://lkml.kernel.org/r/c763afc8-f0ae-756a-56a7-395f625b95fc@i-love.sakura.ne.jp
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Acked-by: Michal Hocko <mhocko@suse.com>
Reviewed-by: Shakeel Butt <shakeelb@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
135e53514e
commit
f168a9a54e
|
@ -1167,7 +1167,7 @@ int mem_cgroup_scan_tasks(struct mem_cgroup *memcg,
|
|||
struct css_task_iter it;
|
||||
struct task_struct *task;
|
||||
|
||||
css_task_iter_start(&iter->css, 0, &it);
|
||||
css_task_iter_start(&iter->css, CSS_TASK_ITER_PROCS, &it);
|
||||
while (!ret && (task = css_task_iter_next(&it)))
|
||||
ret = fn(task, arg);
|
||||
css_task_iter_end(&it);
|
||||
|
|
|
@ -346,9 +346,6 @@ static int oom_evaluate_task(struct task_struct *task, void *arg)
|
|||
if (!points || points < oc->chosen_points)
|
||||
goto next;
|
||||
|
||||
/* Prefer thread group leaders for display purposes */
|
||||
if (points == oc->chosen_points && thread_group_leader(oc->chosen))
|
||||
goto next;
|
||||
select:
|
||||
if (oc->chosen)
|
||||
put_task_struct(oc->chosen);
|
||||
|
|
Loading…
Reference in New Issue