Re: [PATCH 11/12] vmscan: Write out dirty pages in batch
From: Mel Gorman <hidden>
Date: 2010-06-15 10:18:58
Also in:
linux-fsdevel, lkml
On Mon, Jun 14, 2010 at 05:13:37PM -0400, Rik van Riel wrote:
On 06/14/2010 07:17 AM, Mel Gorman wrote:quoted
Page reclaim cleans individual pages using a_ops->writepage() because from the VM perspective, it is known that pages in a particular zone must be freed soon, it considers the target page to be the oldest and it does not want to wait while background flushers cleans other pages. From a filesystem perspective this is extremely inefficient as it generates a very seeky IO pattern leading to the perverse situation where it can take longer to clean all dirty pages than it would have otherwise.Reclaiming clean pages should be fast enough that this should make little, if any, difference.
Indeed, this was a bit weak. The original point of the patch was to write contiguous pages belonging to the same inode when they were encountered in that batch which made a bit more sense but didn't work out at first pass.
quoted
This patch queues all dirty pages at once to maximise the chances that the write requests get merged efficiently. It also makes the next patch that avoids writeout from direct reclaim more straight-forward.However, this is a convincing argument :)
Thanks.
quoted
Signed-off-by: Mel Gorman<redacted>Reviewed-by: Rik van Riel <redacted>
Thanks again :) -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- 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>