Re: [PATCH 03/13] writeback: per-task rate limit onbalance_dirty_pages()

From: Wu Fengguang
Date: Wed Nov 17 2010 - 09:39:19 EST


> + if (pause == 0 && nr_dirty < background_thresh)
> + current->nr_dirtied_pause = ratelimit_pages(bdi);
> + else if (pause == 1)
> + current->nr_dirtied_pause += current->nr_dirtied_pause >> 5;

Sorry here is a bug fix for the above line, it's also pushed to the
git tree.

Thanks,
Fengguang
---
Subject: writeback: fix increasement of nr_dirtied_pause
Date: Wed Nov 17 22:31:26 CST 2010

Fix a bug that

current->nr_dirtied_pause += current->nr_dirtied_pause >> 5;

does not effectively increase nr_dirtied_pause when it's <= 32.
Thus nr_dirtied_pause may never grow up..

Signed-off-by: Wu Fengguang <fengguang.wu@xxxxxxxxx>
---
mm/page-writeback.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-next.orig/mm/page-writeback.c 2010-11-17 22:31:09.000000000 +0800
+++ linux-next/mm/page-writeback.c 2010-11-17 22:31:23.000000000 +0800
@@ -662,7 +662,7 @@ pause:
if (pause == 0 && nr_dirty < background_thresh)
current->nr_dirtied_pause = ratelimit_pages(bdi);
else if (pause == 1)
- current->nr_dirtied_pause += current->nr_dirtied_pause >> 5;
+ current->nr_dirtied_pause += current->nr_dirtied_pause / 32 + 1;
else if (pause >= HZ/10)
/*
* when repeated, writing 1 page per 100ms on slow devices,
--
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/