• N
    [PATCH] oom: handle oom_disable exiting · 4a3ede10
    Nick Piggin 提交于
    Having the oomkilladj == OOM_DISABLE check before the releasing check means
    that oomkilladj == OOM_DISABLE tasks exiting will not stop the OOM killer.
    
    Moving the test down will give the desired behaviour.  Also: it will allow
    them to "OOM-kill" themselves if they are exiting.  As per the previous patch,
    this is required to prevent OOM killer deadlocks (and they don't actually get
    killed, because they're already exiting -- they're simply allowed access to
    memory reserves).
    Signed-off-by: NNick Piggin <npiggin@suse.de>
    Signed-off-by: NAndrew Morton <akpm@osdl.org>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    4a3ede10
oom_kill.c 11.2 KB