On 12/14/2012 10:43 AM, Rik van Riel wrote: > On 12/14/2012 03:37 AM, Michal Hocko wrote: > >> I can answer the later. Because memsw comes with its price and >> swappiness is much cheaper. On the other hand it makes sense that >> swappiness==0 doesn't swap at all. Or do you think we should get back >> to _almost_ doesn't swap at all? > > swappiness==0 will swap in emergencies, specifically when we have > almost no page cache left, we will still swap things out: > > if (global_reclaim(sc)) { > free = zone_page_state(zone, NR_FREE_PAGES); > if (unlikely(file + free <= high_wmark_pages(zone))) { > /* > * If we have very few page cache pages, force-scan > * anon pages. > */ > fraction[0] = 1; > fraction[1] = 0; > denominator = 1; > goto out; > > This makes sense, because people who set swappiness==0 but do have > swap space available would probably prefer some emergency swapping > over an OOM kill. This behavior is reasonable for global reclaim to me. But when we hit this condition, it may be better to print some messages to notify the user who set swappiness==0 of anon page scan. Regards, Satoru ��.n������g����a����&ޖ)���)��h���&������梷�����Ǟ�m������)������^�����������v���O��zf������