On Fri, Jan 28, 2011 at 01:03:50PM -0500, Rik van Riel wrote: > My point is, the behaviour you describe would be WRONG :) > > The reason is that the different zones can contain data > that is either heavily used or rarely used, often some > mixture of the two, but sometimes the zones are out of > balance in how much the data in memory gets touched. > > We need to reclaim and reuse the lightly used memory > a little faster than the heavily used memory, to even > out the memory pressure between zones. I've no idea how kswapd can reclaim the lightly used memory a little faster when it blocks at high+gap. Unless the allocator is eating into the gap, kswapd will be stuck at 700M free, and no rotation in the lru will ever happen in the lower zones. You can't control it from kswapd but only from the allocator and regardless the size of the gap the rotation won't alter. As eventually in the "cp /dev/sda /dev/null" example workload (but simulating what happens normally during any file read) the "high+gap" will be reached in 5 sec then it'll be like if there's no gap for the next 2 hours. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>