Re: 2.4.>=13 VM/kswapd/shmem/Oracle issue (was Re: Google's mm problems)

Andrea Arcangeli (andrea@suse.de)
Sat, 17 Nov 2001 16:54:41 +0100


[ sorry for the delay ]

On Thu, Nov 15, 2001 at 05:48:36PM +0000, Arjan van de Ven wrote:
> Andrea Arcangeli wrote:
>
> > loop that can trigger with the -ac VM when all the ZONE_DMA is
> > unfreeable (now fixed in mainline with classzone) have nothing to do
>
> Ok I think I've misunderstood classzone then.
> As I understand it, it prevents looping in ZONE_NORMAL when ZONE_DMA has
> memory free,
> and looping in ZONE_HIGHMEM if ZONE_NORMAL or ZONE_DMA have memory free.

correct.

> Can you please explain how it also solves the ZONE_DMA problem ?

It also solves the ZONE_DMA problem with the ->need_balance trigger in
combination with the classzone logic.

With classzone in combination with the need_balance kswapd will never
ever waste time trying to balance a never used classzone.

If all your hardware is PCI nobody will make an allocation from the
ZONE_DMA classzone and so kswapd will never loop on the ZONE_DMA, as
instead can happen with -ac as soon as the ZONE_DMA becomes unfreeable
and under the low watermark (and "unfreeable" of course also means all
anon not locked memory but no swap installed in the machine).

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