[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC] 2.3.39 zone balancing
On Thu, 13 Jan 2000, Rik van Riel wrote:
>Now we'll only want to build something into kswapd
>so that rebalancing the high memory zones is done in
>the background.
You never need to rebance the bigmem between 1g and 64g withing kswapd.
This because bh/irq handlers are not going to use it. So kswapd has to
care only about the memory below the bigmem boundary.
BTW I just noticed currently (2.3.40pre1) kswapd is completly
screwedup. kswapd should still do:
while (nr_free_pages - nr_free_bigpages < freepages.high)
exactly like in our early 2.3.18 bigmem code because _nothing_ is changed
is the basic MM design since that time.
The fix against 2.3.40pre1 to re-activate kswapd is this:
--- 2.3.40pre1/mm/vmscan.c Sun Jan 9 20:45:31 2000
+++ /tmp/vmscan.c Thu Jan 13 21:09:33 2000
@@ -503,7 +503,7 @@
do {
/* kswapd is critical to provide GFP_ATOMIC
allocations (not GFP_HIGHMEM ones). */
- if (nr_free_buffer_pages() >= freepages.high)
+ if (nr_free_pages() - nr_free_highpages() >= freepages.high)
break;
if (!do_try_to_free_pages(GFP_KSWAPD, 0))
break;
Andrea
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.nl.linux.org/Linux-MM/