Thread (32 messages) 32 messages, 11 authors, 2012-05-21

Re: [RFC][PATCH] avoid swapping out with swappiness==0

From: Johannes Weiner <hidden>
Date: 2012-03-05 21:56:17
Also in: lkml

On Fri, Mar 02, 2012 at 12:36:40PM -0500, Satoru Moriya wrote:
Sometimes we'd like to avoid swapping out anonymous memory
in particular, avoid swapping out pages of important process or
process groups while there is a reasonable amount of pagecache
on RAM so that we can satisfy our customers' requirements.

OTOH, we can control how aggressive the kernel will swap memory pages
with /proc/sys/vm/swappiness for global and
/sys/fs/cgroup/memory/memory.swappiness for each memcg.

But with current reclaim implementation, the kernel may swap out
even if we set swappiness==0 and there is pagecache on RAM.

This patch changes the behavior with swappiness==0. If we set
swappiness==0, the kernel does not swap out completely
(for global reclaim until the amount of free pages and filebacked
pages in a zone has been reduced to something very very small
(nr_free + nr_filebacked < high watermark)).

Any comments are welcome.
Last time I tried that (getting rid of sc->may_swap, using
!swappiness), it was rejected it as there were users who relied on
swapping very slowly with this setting.

KOSAKI-san, do I remember correctly?  Do you still think it's an
issue?

Personally, I still think it's illogical that !swappiness allows
swapping and would love to see this patch go in.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  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@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help