Messages in this thread | | | Date | Mon, 26 Jul 2010 19:32:45 +0800 | From | Wu Fengguang <> | Subject | Re: [PATCH 2/6] writeback: the kupdate expire timestamp should be a moving target |
| |
On Mon, Jul 26, 2010 at 06:52:00PM +0800, Mel Gorman wrote: > On Thu, Jul 22, 2010 at 01:09:30PM +0800, Wu Fengguang wrote: > > Dynamicly compute the dirty expire timestamp at queue_io() time. > > Also remove writeback_control.older_than_this which is no longer used. > > > > writeback_control.older_than_this used to be determined at entrance to > > the kupdate writeback work. This _static_ timestamp may go stale if the > > kupdate work runs on and on. The flusher may then stuck with some old > > busy inodes, never considering newly expired inodes thereafter. > > > > This has two possible problems: > > > > - It is unfair for a large dirty inode to delay (for a long time) the > > writeback of small dirty inodes. > > > > - As time goes by, the large and busy dirty inode may contain only > > _freshly_ dirtied pages. Ignoring newly expired dirty inodes risks > > delaying the expired dirty pages to the end of LRU lists, triggering > > the very bad pageout(). Neverthless this patch merely addresses part > > of the problem. > > > > CC: Jan Kara <jack@suse.cz> > > Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> > > Again, makes sense and I can't see a problem. There are some worth > smithing issues in the changelog such as Dynamicly -> Dynamically and
Hah forgot to enable spell checking.
> s/writeback_control.older_than_this used/writeback_control.older_than_this is used/
It's "used to", my god.
> but other than that. > > Acked-by: Mel Gorman <mel@csn.ul.ie>
Thanks, Fengguang
| |