Re: [PATCH 1/3] PM: Disable OOM killer during system-wide powertransitions

From: Andrew Morton
Date: Fri May 01 2009 - 19:14:12 EST


On Sat, 2 May 2009 00:27:30 +0200
"Rafael J. Wysocki" <rjw@xxxxxxx> wrote:

> From: Rafael J. Wysocki <rjw@xxxxxxx>
>
> The OOM killer is not particularly useful during system-wide power
> transitions, so do not use it if such a transition is in progress.
>

so... I think what you've done here is to arrange for the page
allocator to return NULL if we're hibernating rather than oom-killing,
yes?

Does the same apply to suspending? If so, why?

I think this is an OK change, as long as the only thing which is
allocating memory is hibernation itself. If random processes are still
doing random memory allocations at this time then their failed memory
allocation could be just as fatal as an oom-killing. Moreso if they're
s/bin/init or whatever.

So is it the case that pm_transition_in_progress() is only true during
the highly-constrained hibernation process? After everything is frozen?

If so, there are alternatives - the calling process could set
PF_DONT_KILL_ANYONE_FOR_ME, or could pass __GFP_DONT_KILL_ANYONE_FOR_ME.
Those might be worse alternatives, dunno - I'm just asking probing
questions ;)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/