Messages in this thread | | | Date | Thu, 16 Sep 2010 16:59:49 +0900 | From | Minchan Kim <> | Subject | Re: [PATCH 7/8] writeback: Do not sleep on the congestion queue if there are no congested BDIs |
| |
On Wed, Sep 15, 2010 at 01:27:50PM +0100, Mel Gorman wrote: > If congestion_wait() is called with no BDI congested, the caller will sleep > for the full timeout and this may be an unnecessary sleep. This patch adds > a wait_iff_congested() that checks congestion and only sleeps if a BDI is > congested else, it calls cond_resched() to ensure the caller is not hogging > the CPU longer than its quota but otherwise will not sleep. > > This is aimed at reducing some of the major desktop stalls reported during > IO. For example, while kswapd is operating, it calls congestion_wait() > but it could just have been reclaiming clean page cache pages with no > congestion. Without this patch, it would sleep for a full timeout but after > this patch, it'll just call schedule() if it has been on the CPU too long. > Similar logic applies to direct reclaimers that are not making enough > progress.
I confused due to kswapd you mentioned. This patch affects only direct reclaim. Please, complete the description.
"This patch affects direct reclaimer to reduce stall" Otherwise, looks good to me.
> > Signed-off-by: Mel Gorman <mel@csn.ul.ie> Reviewed-by: Minchan Kim <minchan.kim@gmail.com>
-- Kind regards, Minchan Kim
| |