Re: [PATCH 02/10] writeback: balance_dirty_pages() shall writemore than dirtied pages

From: Peter Zijlstra
Date: Thu Sep 24 2009 - 11:03:48 EST


On Thu, 2009-09-24 at 16:40 +0200, Jens Axboe wrote:
> From: Wu Fengguang <fengguang.wu@xxxxxxxxx>
>
> Some filesystem may choose to write much more than ratelimit_pages
> before calling balance_dirty_pages_ratelimited_nr(). So it is safer to
> determine number to write based on real number of dirtied pages.
>
> Otherwise it is possible that
> loop {
> btrfs_file_write(): dirty 1024 pages
> balance_dirty_pages(): write up to 48 pages (= ratelimit_pages * 1.5)
> }
> in which the writeback rate cannot keep up with dirty rate, and the
> dirty pages go all the way beyond dirty_thresh.
>
> The increased write_chunk may make the dirtier more bumpy.
> So filesystems shall be take care not to dirty too much at
> a time (eg. > 4MB) without checking the ratelimit.
>
> Signed-off-by: Wu Fengguang <fengguang.wu@xxxxxxxxx>
> Signed-off-by: Jens Axboe <jens.axboe@xxxxxxxxxx>

Acked-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/