Messages in this thread | | | Date | Wed, 27 Oct 2004 13:34:30 +1000 | From | Nick Piggin <> | Subject | Re: lowmem_reserve (replaces protection) |
| |
Andrea Arcangeli wrote: > On Wed, Oct 27, 2004 at 01:01:54PM +1000, Nick Piggin wrote: > >>Currently it does not overschedule, because one zone is always >>going to be low by the time kswapd wakes up. This causes all zones >>below to be scanned as well. > > > that's quite subtle (after all it's needed only for the numa pgdats) and > I agree on the wakeup side, the one thing that is wrong instead is the > kswapd-stop side. On that side you really need to know every single zone > that has to be balanced. So whatever, you can't just use pages_high > there. I'm creating a zone->max_lowmem_reserve to fix that efficiently > (that's recalculated every time with the sysctl and at boot). > > However my patch to wakeup_kswapd sure wouldn't hurt there. >
You do though... it is right as is (sort of).
It actually can overscan lower zones a little bit, because whenever any higher zone in the pgdat is low on memory, then it and all zones below it get scanned too.
So if HIGHMEM is low on memory, NORMAL and DMA get scanned as well regardless. If NORMAL is low, then DMA gets scanned as well. - 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/
| |