On Wed, Jul 07, 2010 at 01:03:38PM +0800, Wu Fengguang wrote: > Hi Mel, > > > Second, using systemtap, I was able to see that file-backed dirty > > pages have a tendency to be near the end of the LRU even though they > > are a small percentage of the overall pages in the LRU. I'm hoping > > to figure out why this is as it would make avoiding writeback a lot > > less controversial. > > Your intuitions are correct -- the current background writeback logic > fails to write elder inodes first. Under heavy loads the background > writeback job may run for ever, totally ignoring the time order of > inode->dirtied_when. This is probably why you see lots of dirty pages > near the end of LRU. > Possible. In a mail to Christoph, I asserted that writeback of elder inodes was happening first but I obviously could be mistaken. > Here is an old patch for fixing this. Sorry for being late. I'll > pick up and refresh the patch series ASAP. (I made a mistake last > year to post too many patches at one time. I'll break them up into > more manageable pieces.) > > [PATCH 31/45] writeback: sync old inodes first in background writeback > <https://kerneltrap.org/mailarchive/linux-fsdevel/2009/10/7/6476313> > I'll check it out as an alternative to forward-flushing based on the amount of dirty pages encountered during scanning. Thanks. -- 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