On Fri, 12 May 2000, Linus Torvalds wrote: > With such a setup, your patch makes lots of sense - trying to decouple > the highmem zone as much as possible. But the more recent kernels > should be better at not touching zones that don't need touching (it > will still change the LRU information, though). i initially tested pre7-9 and it showed bad behavior: high kswapd activity trying to balance highmem, while the pagecache is primarily filled from the highmem. I dont think this can be fixed without 'silencing' ZONE_HIGHMEM's balancing activities: the pagecache allocates from highmem so it puts direct pressure on the highmem zone. This had two effects: wasted CPU time, but it also limited the page-cache's maximum size to the size of highmem. I'll try the final pre7-2.3.99 kernel as well in a minute to make sure. (i think the bad behavior is still be there, judging from the differences between pre9 and the final patch.) (i've attached a patch against final-pre7, which is not complete and which i'm not yet happy about (the kernel shows bad behavior if lots of dirty data is generated by many processes), but it shows eg. the highmem.c cleanup that is possible.) Ingo