[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200905100103.23815.rjw@sisk.pl>
Date: Sun, 10 May 2009 01:03:22 +0200
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: David Rientjes <rientjes@...gle.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>, fengguang.wu@...el.com,
linux-pm@...ts.linux-foundation.org, pavel@....cz,
Linus Torvalds <torvalds@...ux-foundation.org>,
jens.axboe@...cle.com, alan-jenkins@...fmail.co.uk,
linux-kernel@...r.kernel.org, kernel-testers@...r.kernel.org,
Mel Gorman <mel@....ul.ie>
Subject: Re: [PATCH 1/5] mm: Add __GFP_NO_OOM_KILL flag
On Sunday 10 May 2009, David Rientjes wrote:
> On Sat, 9 May 2009, Rafael J. Wysocki wrote:
>
> > > This has been changed in the latest mmotm with Mel's page alloactor
> > > patches (and I think yours should be based on mmotm). Specifically,
> > > page-allocator-break-up-the-allocator-entry-point-into-fast-and-slow-paths.patch.
> > >
> > > Before his patchset, zonelists that had ZONE_OOM_LOCKED set for at least
> > > one of their zones would unconditionally goto restart. Now, if
> > > order > PAGE_ALLOC_COSTLY_ORDER, it gives up and returns NULL. Otherwise,
> > > it does goto restart.
> > >
> > > So if your allocation has order > PAGE_ALLOC_COSTLY_ORDER,
> >
> > It doesn't. All of my allocations are of order 0.
> >
>
> All order 0 allocations are implicitly __GFP_NOFAIL and will loop
> endlessly unless they can't block. So if you want to simply prohibit the
> oom killer from being invoked and not change the retry behavior, setting
> ZONE_OOM_LOCKED for all zones will do that. If your machine hangs, it
> means nothing can be reclaimed and you can't free memory via oom killing,
> so there's nothing else the page allocator can do.
But I want it to give up in this case instead of looping forever.
Look. I have a specific problem at hand that I want to solve and the approach
you suggested _clearly_ _doesn't_ _work_. I have also tried to explain to you
why it doesn't work, but you're ingnoring it, so I really don't know what else
I can say.
OTOH, the approach suggested by Andrew _does_ _work_ regardless of your
opinion about it. It's been tested and it's done the job 100% of the time. Go
figure. And please stop beating the dead horse.
Thanks,
Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists