Messages in this thread | | | From | Michal Hocko <> | Subject | [PATCH 0/4] OOM vs PM freezer fixes | Date | Fri, 5 Dec 2014 17:41:42 +0100 |
| |
Hi, here is another take at OOM vs. PM freezer interaction fixes/cleanups. First three patches are fixes for an unlikely cases when OOM races with the PM freezer which should be closed completely finally. The last patch is a simple code enhancement which is not needed strictly speaking but it is nice to have IMO.
Both OOM killer and PM freezer are quite subtle so I hope I haven't missing anything. Any feedback is highly appreciated. I am also interested about feedback for the used approach. To be honest I am not really happy about spreading TIF_MEMDIE checks into freezer (patch 1) but I didn't find any other way for detecting OOM killed tasks.
Changes are based on top of Linus tree (3.18-rc3).
Michal Hocko (4): OOM, PM: Do not miss OOM killed frozen tasks OOM, PM: make OOM detection in the freezer path raceless OOM, PM: handle pm freezer as an OOM victim correctly OOM: thaw the OOM victim if it is frozen
Diffstat says: drivers/tty/sysrq.c | 6 ++-- include/linux/oom.h | 39 ++++++++++++++++------ kernel/freezer.c | 15 +++++++-- kernel/power/process.c | 60 +++++++++------------------------- mm/memcontrol.c | 4 ++- mm/oom_kill.c | 89 ++++++++++++++++++++++++++++++++++++++------------ mm/page_alloc.c | 32 +++++++++--------- 7 files changed, 147 insertions(+), 98 deletions(-)
| |