Skip to content

Commit

Permalink
sched: Move cfs_bandwidth_slice sysctls to fair.c
Browse files Browse the repository at this point in the history
move cfs_bandwidth_slice sysctls to fair.c and use the
new register_sysctl_init() to register the sysctl interface.

Signed-off-by: Zhen Ni <[email protected]>
Signed-off-by: Luis Chamberlain <[email protected]>
  • Loading branch information
nizhenth authored and mcgrof committed Apr 6, 2022
1 parent 3267e01 commit d4ae80f
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 34 deletions.
4 changes: 0 additions & 4 deletions include/linux/sched/sysctl.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,6 @@ extern int sysctl_numa_balancing_mode;
#define sysctl_numa_balancing_mode 0
#endif

#ifdef CONFIG_CFS_BANDWIDTH
extern unsigned int sysctl_sched_cfs_bandwidth_slice;
#endif

int sysctl_numa_balancing(struct ctl_table *table, int write, void *buffer,
size_t *lenp, loff_t *ppos);

Expand Down
51 changes: 31 additions & 20 deletions kernel/sched/fair.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,25 +109,6 @@ static unsigned int sched_nr_latency = 8;
* parent will (try to) run first.
*/
unsigned int sysctl_sched_child_runs_first __read_mostly;
#ifdef CONFIG_SYSCTL
static struct ctl_table sched_child_runs_first_sysctls[] = {
{
.procname = "sched_child_runs_first",
.data = &sysctl_sched_child_runs_first,
.maxlen = sizeof(unsigned int),
.mode = 0644,
.proc_handler = proc_dointvec,
},
{}
};

static int __init sched_child_runs_first_sysctl_init(void)
{
register_sysctl_init("kernel", sched_child_runs_first_sysctls);
return 0;
}
late_initcall(sched_child_runs_first_sysctl_init);
#endif

/*
* SCHED_OTHER wake-up granularity.
Expand Down Expand Up @@ -192,7 +173,37 @@ int __weak arch_asym_cpu_priority(int cpu)
*
* (default: 5 msec, units: microseconds)
*/
unsigned int sysctl_sched_cfs_bandwidth_slice = 5000UL;
static unsigned int sysctl_sched_cfs_bandwidth_slice = 5000UL;
#endif

#ifdef CONFIG_SYSCTL
static struct ctl_table sched_fair_sysctls[] = {
{
.procname = "sched_child_runs_first",
.data = &sysctl_sched_child_runs_first,
.maxlen = sizeof(unsigned int),
.mode = 0644,
.proc_handler = proc_dointvec,
},
#ifdef CONFIG_CFS_BANDWIDTH
{
.procname = "sched_cfs_bandwidth_slice_us",
.data = &sysctl_sched_cfs_bandwidth_slice,
.maxlen = sizeof(unsigned int),
.mode = 0644,
.proc_handler = proc_dointvec_minmax,
.extra1 = SYSCTL_ONE,
},
#endif
{}
};

static int __init sched_fair_sysctl_init(void)
{
register_sysctl_init("kernel", sched_fair_sysctls);
return 0;
}
late_initcall(sched_fair_sysctl_init);
#endif

static inline void update_load_add(struct load_weight *lw, unsigned long inc)
Expand Down
10 changes: 0 additions & 10 deletions kernel/sysctl.c
Original file line number Diff line number Diff line change
Expand Up @@ -1681,16 +1681,6 @@ static struct ctl_table kern_table[] = {
.extra2 = SYSCTL_FOUR,
},
#endif /* CONFIG_NUMA_BALANCING */
#ifdef CONFIG_CFS_BANDWIDTH
{
.procname = "sched_cfs_bandwidth_slice_us",
.data = &sysctl_sched_cfs_bandwidth_slice,
.maxlen = sizeof(unsigned int),
.mode = 0644,
.proc_handler = proc_dointvec_minmax,
.extra1 = SYSCTL_ONE,
},
#endif
#if defined(CONFIG_ENERGY_MODEL) && defined(CONFIG_CPU_FREQ_GOV_SCHEDUTIL)
{
.procname = "sched_energy_aware",
Expand Down

0 comments on commit d4ae80f

Please sign in to comment.