Messages in this thread | | | Date | Thu, 7 May 2009 16:15:08 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH 1/5] mm: Add __GFP_NO_OOM_KILL flag |
| |
On Fri, 8 May 2009 00:50:41 +0200 "Rafael J. Wysocki" <rjw@sisk.pl> wrote:
> On Friday 08 May 2009, Andrew Morton wrote: > > On Fri, 8 May 2009 00:14:48 +0200 > > "Rafael J. Wysocki" <rjw@sisk.pl> wrote: > > > > > IOW, you need to freeze the user space totally before trying to disable the > > > OOM killer. > > > > Not necessarily. We only need to take action if a task is about to > > start oom-killing - presumably by taking a nap. > > > > If a process is sitting there happily computing pi then we can leave it > > running. > > Well, the point is we don't really know what the task is going to do next. > Is it going to continue computing pi, or is it going to execl(huge_binary), for > example? > > If we knew what tasks were going to do in advance, the whole freezing wouldn't > really be necessary. :-)
argh. Third time:
- if the task is computing pi, let it do so.
- if the task tries to allocate memory and succeeds, let it proceed.
- if the task tries to allocate memory and fails and then tries to invoke the oom-killer, stop the task.
| |