On Mon, Jun 14, 2010 at 05:13:37PM -0400, Rik van Riel wrote: > On 06/14/2010 07:17 AM, Mel Gorman wrote: >> 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. >> 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. >> Signed-off-by: Mel Gorman<mel@xxxxxxxxx> > > Reviewed-by: Rik van Riel <riel@xxxxxxxxxx> > Thanks again :) -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html