On 05/17/2012 06:13 PM, Michal Hocko wrote: > [64574746 vmscan: detect mapped file pages used only once] made mapped pages > have another round in inactive list because they might be just short > lived and so we could consider them again next time. This heuristic > helps to reduce pressure on the active list with a streaming IO > worklods. > This patch fixes a regression introduced by this commit for heavy shmem > based workloads because unlike Anon pages, which are excluded from this > heuristic because they are usually long lived, shmem pages are handled > as a regular page cache. > This doesn't work quite well, unfortunately, if the workload is mostly > backed by shmem (in memory database sitting on 80% of memory) with a > streaming IO in the background (backup - up to 20% of memory). Anon > inactive list is full of (dirty) shmem pages when watermarks are > hit. Shmem pages are kept in the inactive list (they are referenced) > in the first round and it is hard to reclaim anything else so we reach > lower scanning priorities very quickly which leads to an excessive swap > out. > > Let's fix this by excluding all swap backed pages (they tend to be long > lived wrt. the regular page cache anyway) from used-once heuristic and > rather activate them if they are referenced. > > CC: Johannes Weiner <hannes@xxxxxxxxxxx> > CC: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > CC: Mel Gorman <mel@xxxxxxxxx> > CC: Minchan Kim <minchan@xxxxxxxxxx> > CC: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > CC: Rik van Riel <riel@xxxxxxxxxx> > CC: stable [2.6.34+] > Signed-off-by: Michal Hocko <mhocko@xxxxxxx> Reviewed-by: Minchan Kim <minchan@xxxxxxxxxx> Good spot! -- Kind regards, Minchan Kim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>