Re: [PATCH] allocation looping + kswapd CPU cycles

Marcelo Tosatti
2001-05-10T20:01:45Z

On Thu, 10 May 2001, Stephen C. Tweedie wrote:

> Hi,
>
> On Thu, May 10, 2001 at 01:43:46PM -0300, Marcelo Tosatti wrote:
>
> > No. __GFP_FAIL can to try to reclaim pages from inactive clean.
> >
> > We just want to avoid __GFP_FAIL allocations from going to
> > try_to_free_pages().
>
> Why? __GFP_FAIL is only useful as an indication that the caller has
> some magic mechanism for coping with failure.

Hum, not _only_.

Initially I thought about __GFP_FAIL to be used by writeout routines which
want to cluster pages until they can allocate memory without causing any
pressure to the system. Something like this:

while ((page = alloc_page(GFP_FAIL))
add_page_to_cluster(page);

write_cluster();

See?

> There's no other information passed, so a brief call to
> try_to_free_pages is quite appropriate.

This obviously depends on what we decide __GFP_FAIL will be used for.