diff options
Diffstat (limited to 'kernel/sysctl.c')
| -rw-r--r-- | kernel/sysctl.c | 25 | 
1 files changed, 25 insertions, 0 deletions
| diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 4c93486b45d1..84ff5e75c084 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -37,6 +37,7 @@  #include <linux/highuid.h>  #include <linux/writeback.h>  #include <linux/ratelimit.h> +#include <linux/compaction.h>  #include <linux/hugetlb.h>  #include <linux/initrd.h>  #include <linux/key.h> @@ -262,6 +263,11 @@ static int min_sched_shares_ratelimit = 100000; /* 100 usec */  static int max_sched_shares_ratelimit = NSEC_PER_SEC; /* 1 second */  #endif +#ifdef CONFIG_COMPACTION +static int min_extfrag_threshold; +static int max_extfrag_threshold = 1000; +#endif +  static struct ctl_table kern_table[] = {  	{  		.procname	= "sched_child_runs_first", @@ -1121,6 +1127,25 @@ static struct ctl_table vm_table[] = {  		.mode		= 0644,  		.proc_handler	= drop_caches_sysctl_handler,  	}, +#ifdef CONFIG_COMPACTION +	{ +		.procname	= "compact_memory", +		.data		= &sysctl_compact_memory, +		.maxlen		= sizeof(int), +		.mode		= 0200, +		.proc_handler	= sysctl_compaction_handler, +	}, +	{ +		.procname	= "extfrag_threshold", +		.data		= &sysctl_extfrag_threshold, +		.maxlen		= sizeof(int), +		.mode		= 0644, +		.proc_handler	= sysctl_extfrag_handler, +		.extra1		= &min_extfrag_threshold, +		.extra2		= &max_extfrag_threshold, +	}, + +#endif /* CONFIG_COMPACTION */  	{  		.procname	= "min_free_kbytes",  		.data		= &min_free_kbytes, |