The patch titled Subject: mm: memcontrol: remove task_in_mem_cgroup() has been added to the -mm tree. Its filename is mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> Subject: mm: memcontrol: remove task_in_mem_cgroup() oom_unkillable_task() no longer calls task_in_mem_cgroup(). Link: http://lkml.kernel.org/r/1560852154-14218-1-git-send-email-penguin-kernel@xxxxxxxxxxxxxxxxxxx Signed-off-by: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> Cc: Shakeel Butt <shakeelb@xxxxxxxxxx> Cc: David Rientjes <rientjes@xxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Roman Gushchin <guro@xxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/memcontrol.h | 7 ------- mm/memcontrol.c | 26 -------------------------- 2 files changed, 33 deletions(-) --- a/include/linux/memcontrol.h~mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix +++ a/include/linux/memcontrol.h @@ -394,7 +394,6 @@ out: struct lruvec *mem_cgroup_page_lruvec(struct page *, struct pglist_data *); -bool task_in_mem_cgroup(struct task_struct *task, struct mem_cgroup *memcg); struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p); struct mem_cgroup *get_mem_cgroup_from_mm(struct mm_struct *mm); @@ -874,12 +873,6 @@ static inline bool mm_match_cgroup(struc { return true; } - -static inline bool task_in_mem_cgroup(struct task_struct *task, - const struct mem_cgroup *memcg) -{ - return true; -} static inline struct mem_cgroup *get_mem_cgroup_from_mm(struct mm_struct *mm) { --- a/mm/memcontrol.c~mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix +++ a/mm/memcontrol.c @@ -1259,32 +1259,6 @@ void mem_cgroup_update_lru_size(struct l *lru_size += nr_pages; } -bool task_in_mem_cgroup(struct task_struct *task, struct mem_cgroup *memcg) -{ - struct mem_cgroup *task_memcg; - struct task_struct *p; - bool ret; - - p = find_lock_task_mm(task); - if (p) { - task_memcg = get_mem_cgroup_from_mm(p->mm); - task_unlock(p); - } else { - /* - * All threads may have already detached their mm's, but the oom - * killer still needs to detect if they have already been oom - * killed to prevent needlessly killing additional tasks. - */ - rcu_read_lock(); - task_memcg = mem_cgroup_from_task(task); - css_get(&task_memcg->css); - rcu_read_unlock(); - } - ret = mem_cgroup_is_descendant(task_memcg, memcg); - css_put(&task_memcg->css); - return ret; -} - /** * mem_cgroup_margin - calculate chargeable space of a memory cgroup * @memcg: the memory cgroup _ Patches currently in -mm which might be from penguin-kernel@xxxxxxxxxxxxxxxxxxx are mm-memcontrol-use-css_task_iter_procs-at-mem_cgroup_scan_tasks.patch mm-memcontrol-use-css_task_iter_procs-at-mem_cgroup_scan_tasks-fix.patch mm-oom-fix-oom_unkillable_task-for-memcg-ooms-fix.patch mm-oom-remove-redundant-oom-score-normalization-at-select_bad_process.patch info-task-hung-in-generic_file_write_iter.patch info-task-hung-in-generic_file_write-fix.patch