>From a2e285562dea734896e571399cfc993b309029b9 Mon Sep 17 00:00:00 2001 From: Jan Kara Date: Wed, 26 Jan 2011 17:07:21 +0100 Subject: [PATCH 4/5] mm: Remove low limit from sync_writeback_pages() sync_writeback_pages() limited minimal amount of pages to write in balance_dirty_pages() to 3/2*ratelimit_pages (6 MB) to submit reasonably sized IO. Since we do not submit any IO anymore, be more fair and let the task wait only for 3/2*(the amount dirtied). CC: Andrew Morton CC: Christoph Hellwig CC: Dave Chinner CC: Wu Fengguang CC: Peter Zijlstra Signed-off-by: Jan Kara --- mm/page-writeback.c | 9 ++------- 1 files changed, 2 insertions(+), 7 deletions(-) diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 697dd8e..ff07280 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -43,16 +43,11 @@ static long ratelimit_pages = 32; /* - * When balance_dirty_pages decides that the caller needs to perform some - * non-background writeback, this is how many pages it will attempt to write. - * It should be somewhat larger than dirtied pages to ensure that reasonably - * large amounts of I/O are submitted. + * When balance_dirty_pages decides that the caller needs to wait for some + * writeback to happen, this is how many pages it will attempt to write. */ static inline long sync_writeback_pages(unsigned long dirtied) { - if (dirtied < ratelimit_pages) - dirtied = ratelimit_pages; - return dirtied + dirtied / 2; } -- 1.7.1