On Thu, Mar 11, 2010 at 03:41:24PM -0800, Andrew Morton wrote: > On Mon, 8 Mar 2010 11:48:20 +0000 > Mel Gorman <mel@xxxxxxxxx> wrote: > > > Under memory pressure, the page allocator and kswapd can go to sleep using > > congestion_wait(). In two of these cases, it may not be the appropriate > > action as congestion may not be the problem. > > clear_bdi_congested() is called each time a write completes and the > queue is below the congestion threshold. > Where you appear to get a kicking is if you want on "congestion" but no writes are involved. In that case you potentially sleep for the whole timeout waiting on an event that is not going to occur. > So if the page allocator or kswapd call congestion_wait() against a > non-congested queue, they'll wake up on the very next write completion. > > Hence the above-quoted claim seems to me to be a significant mis-analysis and > perhaps explains why the patchset didn't seem to help anything? > -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>