Re: [VM PATCH] rotate_reclaimable_page fails frequently
From: Andrew Morton <hidden>
Date: 2006-02-06 04:51:29
Also in:
lkml
Rik van Riel [off-list ref] wrote:
On Sun, 5 Feb 2006, Shantanu Goel wrote: > It seems rotate_reclaimable_page fails most of the > time due the page not being on the LRU when kswapd > calls writepage(). The question is, why is the page not yet back on the LRU by the time the data write completes ?
Could be they're ext3 pages which were written out by kjournald. Such pages are marked dirty but have clean buffers. ext3_writepage() will discover that the page is actually clean and will mark it thus without performing any I/O. In which case this code in shrink_list(): /* * A synchronous write - probably a ramdisk. Go * ahead and try to reclaim the page. */ if (TestSetPageLocked(page)) goto keep; if (PageDirty(page) || PageWriteback(page)) goto keep_locked; mapping = page_mapping(page); case PAGE_CLEAN: ; /* try to free the page below */ should just go and reclaim the page immediately. Shantanu, I suggest you add some instrumentation there too, see if it's working. (That'll be non-trivial. Just because we hit PAGE_CLEAN: here doesn't necessarily mean that the page will be reclaimed). -- 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:"dont@kvack.org"> email@kvack.org </a>