On Tue, Dec 29, 2015 at 10:58:22PM +0900, Tetsuo Handa wrote: > >From 8bb9e36891a803e82c589ef78077838026ce0f7d Mon Sep 17 00:00:00 2001 > From: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> > Date: Tue, 29 Dec 2015 22:20:58 +0900 > Subject: [PATCH] mm,oom: Exclude TIF_MEMDIE processes from candidates. > > The OOM reaper kernel thread can reclaim OOM victim's memory before the victim > terminates. But since oom_kill_process() tries to kill children of the memory > hog process first, the OOM reaper can not reclaim enough memory for terminating > the victim if the victim is consuming little memory. The result is OOM livelock > as usual, for timeout based next OOM victim selection is not implemented. What we should be doing is have the OOM reaper clear TIF_MEMDIE after it's done. There is no reason to wait for and prioritize the exit of a task that doesn't even have memory anymore. Once a task's memory has been reaped, subsequent OOM invocations should evaluate anew the most desirable OOM victim. -- 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>