Messages in this thread | | | Date | Sun, 1 Aug 2010 22:41:17 +0900 | From | Minchan Kim <> | Subject | Re: [PATCH] vmscan: synchronous lumpy reclaim don't call congestion_wait() |
| |
Hi KOSAKI,
On Sun, Aug 01, 2010 at 06:12:47PM +0900, KOSAKI Motohiro wrote: > rebased onto Wu's patch > > ---------------------------------------------- > From 35772ad03e202c1c9a2252de3a9d3715e30d180f Mon Sep 17 00:00:00 2001 > From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> > Date: Sun, 1 Aug 2010 17:23:41 +0900 > Subject: [PATCH] vmscan: synchronous lumpy reclaim don't call congestion_wait() > > congestion_wait() mean "waiting for number of requests in IO queue is > under congestion threshold". > That said, if the system have plenty dirty pages, flusher thread push > new request to IO queue conteniously. So, IO queue are not cleared > congestion status for a long time. thus, congestion_wait(HZ/10) is > almostly equivalent schedule_timeout(HZ/10). Just a nitpick. Why is it a problem? HZ/10 is upper bound we intended. If is is rahter high, we can low it. But totally I agree on this patch. It would be better to remove it than lowing.
> > If the system 512MB memory, DEF_PRIORITY mean 128kB scan and It takes 4096 > shrink_page_list() calls to scan 128kB (i.e. 128kB/32=4096) memory. > 4096 times 0.1sec stall makes crazy insane long stall. That shouldn't.
128K / (4K * SWAP_CLUSTER_MAX) = 1
> > In the other hand, this synchronous lumpy reclaim donesn't need this > congestion_wait() at all. shrink_page_list(PAGEOUT_IO_SYNC) cause to > call wait_on_page_writeback() and it provide sufficient waiting.
Absolutely I agree on you.
> > Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> > Reviewed-by: Wu Fengguang <fengguang.wu@intel.com> Reviewed-by: Minchan Kim <minchan.kim@gmail.com>
-- Kind regards, Minchan Kim
| |