On Mon, Jun 27, 2016 at 2:15 PM, Michal Hocko <mhocko@xxxxxxxxxx> wrote: > From: Michal Hocko <mhocko@xxxxxxxx> > > freezing_slow_path is checking TIF_MEMDIE to skip OOM killed > tasks. It is, however, checking the flag on the current task rather than > the given one. This is really confusing because freezing() can be called > also on !current tasks. It would end up working correctly for its main > purpose because __refrigerator will be always called on the current task > so the oom victim will never get frozen. But it could lead to surprising > results when a task which is freezing a cgroup got oom killed because > only part of the cgroup would get frozen. This is highly unlikely but > worth fixing as the resulting code would be more clear anyway. > > Signed-off-by: Michal Hocko <mhocko@xxxxxxxx> Looks reasonable to me, so ACK. > --- > kernel/freezer.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/kernel/freezer.c b/kernel/freezer.c > index a8900a3bc27a..6f56a9e219fa 100644 > --- a/kernel/freezer.c > +++ b/kernel/freezer.c > @@ -42,7 +42,7 @@ bool freezing_slow_path(struct task_struct *p) > if (p->flags & (PF_NOFREEZE | PF_SUSPEND_TASK)) > return false; > > - if (test_thread_flag(TIF_MEMDIE)) > + if (test_tsk_thread_flag(p, TIF_MEMDIE)) > return false; > > if (pm_nosig_freezing || cgroup_freezing(p)) > -- -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>