mm: introduce cache_reclaim_s
Subsystems (5)
PATCH 4/8 mm: introduce cache_reclaim_s
This patch introduces a parameters cache_reclaim_s. It is used to reclaim page cache in circles.
Signed-off-by Xishi Qiu <[email protected]>
--- include/linux/swap.h | 2 ++ kernel/sysctl.c | 8 ++++++++ mm/vmscan.c | 4 ++++ 3 files changed, 14 insertions(+), 0 deletions(-)
include/linux/swap.h +2 -0
@@ -359,6 +359,8 @@ extern unsigned long vm_cache_limit_ratio_max;extern unsigned long vm_cache_limit_mbytes;extern unsigned long vm_cache_limit_mbytes_min;extern unsigned long vm_cache_limit_mbytes_max; +extern unsigned long vm_cache_reclaim_s; +extern unsigned long vm_cache_reclaim_s_min;extern int cache_limit_ratio_sysctl_handler (struct ctl_table *table,int write,void __user *buffer,size_t *length,loff_t *ppos); extern int cache_limit_mbytes_sysctl_handler(struct ctl_table *table, int write,
kernel/sysctl.c +8 -0
@@ -1290,6 +1290,14 @@ static struct ctl_table vm_table[] = { .extra1 = &vm_cache_limit_mbytes_min, .extra2 = &vm_cache_limit_mbytes_max, }, + { + .procname = "cache_reclaim_s", + .data = &vm_cache_reclaim_s, + .maxlen = sizeof(vm_cache_reclaim_s), + .mode = 0644, + .proc_handler = proc_doulongvec_minmax, + .extra1 = &vm_cache_reclaim_s_min, + }, #ifdef CONFIG_COMPACTION { .procname = "compact_memory",
mm/vmscan.c +4 -0
@@ -137,6 +137,8 @@ unsigned long vm_cache_limit_ratio_max;unsigned long vm_cache_limit_mbytes__read_mostly ;unsigned long vm_cache_limit_mbytes_min;unsigned long vm_cache_limit_mbytes_max; +unsigned long vm_cache_reclaim_s__read_mostly ; +unsigned long vm_cache_reclaim_s_min;static LIST_HEAD (shrinker_list);static DECLARE_RWSEM (shrinker_rwsem);
@@ -3390,6 +3392,8 @@ static void shrink_page_cache_init(void) vm_cache_limit_mbytes =0 ; vm_cache_limit_mbytes_min =0 ; vm_cache_limit_mbytes_max = totalram_pages; + vm_cache_reclaim_s =0 ; + vm_cache_reclaim_s_min =0 ; }static unsigned long __shrink_page_cache (gfp_t mask)
Signature · 1 line
1.6.0.2