lkml.org 
[lkml]   [2012]   [Mar]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC][PATCH] avoid swapping out with swappiness==0
Hi Satoru,

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.
>
> Regards,
> Satoru Moriya
>
> Signed-off-by: Satoru Moriya <satoru.moriya@hds.com>

Acked-by: Minchan Kim <minchan@kernel.org>

I agree this feature but current code is rather ugly on readbility.
It's not your fault because it is caused by adding 'noswap' to avoid
scanning of anon pages when priority is 0. You just used that code. :)

Hillf's version looks to be much clean refactoring so after we merge
your patch, we can tidy it up with Hillf's patch.



\
 
 \ /
  Last update: 2012-03-04 08:01    [W:0.220 / U:0.384 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site