[RFC PATCH 04/16 v3] CPU CC update period is changeable via sysctl

From: Yuyang Du
Date: Fri May 30 2014 - 10:41:13 EST


sysctl_sched_cc_sum_period is the CC update period. Make it changable via
sysctl tool. In general, the longer this period, the stabler and slower to
respond to task concurrency change on this CPU.

Signed-off-by: Yuyang Du <yuyang.du@xxxxxxxxx>
---
include/linux/sched/sysctl.h | 4 ++++
kernel/sysctl.c | 9 +++++++++
2 files changed, 13 insertions(+)

diff --git a/include/linux/sched/sysctl.h b/include/linux/sched/sysctl.h
index 8045a55..f8a3e0a 100644
--- a/include/linux/sched/sysctl.h
+++ b/include/linux/sched/sysctl.h
@@ -36,6 +36,10 @@ extern unsigned int sysctl_sched_min_granularity;
extern unsigned int sysctl_sched_wakeup_granularity;
extern unsigned int sysctl_sched_child_runs_first;

+#ifdef CONFIG_SMP
+extern unsigned int sysctl_sched_cc_sum_period;
+#endif
+
enum sched_tunable_scaling {
SCHED_TUNABLESCALING_NONE,
SCHED_TUNABLESCALING_LOG,
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 74f5b58..13aea95 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -1090,6 +1090,15 @@ static struct ctl_table kern_table[] = {
.proc_handler = proc_dointvec,
},
#endif
+#ifdef CONFIG_SMP
+ {
+ .procname = "sched_cc_sum_period",
+ .data = &sysctl_sched_cc_sum_period,
+ .maxlen = sizeof(sysctl_sched_cc_sum_period),
+ .mode = 0644,
+ .proc_handler = proc_dointvec,
+ },
+#endif
{ }
};

--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/