Re: [PATCH] 1/4: rework alloc_pages
From: Andrew Morton <hidden>
Date: 2004-08-06 05:37:25
Nick Piggin [off-list ref] wrote:
Andrew Morton wrote:quoted
Nick Piggin [off-list ref] wrote:quoted
Previously the ->protection[] logic was broken. It was difficult to follow and basically didn't use the asynch reclaim watermarks properly.eh? Broken how?min = (1<<order) + z->protection[alloc_type]; This value is used both as the condition for waking kswapd, and whether or not to enter synch reclaim. What should happen is kswapd gets woken at pages_low, and synch reclaim is started at pages_min.
Are you aware of this:
void wakeup_kswapd(struct zone *zone)
{
if (zone->free_pages > zone->pages_low)
return;
?
pages_low + protection and pages_min + protection, etc.
Nick, sorry, but I shouldn't have to expend these many braincells decrypting your work. Please: much better explanations, more testing results. This stuff is fiddly, sensitive and has a habit of blowing up in our faces weeks later. We need to be cautious. The barriers are higher nowadays. -- 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.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>