Sysctl output changed from kernel 5.10 to 5.13. Why?

Hi,
while playing around with various custom kernels like linux-zen or linux-xanmod I was checking CFS scheduler settings with sysctl and found that with kernel 5.13 the list of variables is a lot shorter than with kernel 5.10. Why is that?

With kernel 5.10 the command “sysctl -A | grep -v domain” shows 19 variables:

kernel.sched_autogroup_enabled = 1
kernel.sched_cfs_bandwidth_slice_us = 5000
kernel.sched_child_runs_first = 0
kernel.sched_deadline_period_max_us = 4194304
kernel.sched_deadline_period_min_us = 100
kernel.sched_energy_aware = 1
kernel.sched_latency_ns = 24000000
kernel.sched_migration_cost_ns = 500000
kernel.sched_min_granularity_ns = 3000000
kernel.sched_nr_migrate = 32
kernel.sched_rr_timeslice_ms = 100
kernel.sched_rt_period_us = 1000000
kernel.sched_rt_runtime_us = 950000
kernel.sched_schedstats = 0
kernel.sched_tunable_scaling = 1
kernel.sched_util_clamp_max = 1024
kernel.sched_util_clamp_min = 1024
kernel.sched_util_clamp_min_rt_default = 1024
kernel.sched_wakeup_granularity_ns = 4000000

While with kernel 5.13 the list has only 13 variables:

kernel.sched_autogroup_enabled = 1
kernel.sched_cfs_bandwidth_slice_us = 5000
kernel.sched_child_runs_first = 0
kernel.sched_deadline_period_max_us = 4194304
kernel.sched_deadline_period_min_us = 100
kernel.sched_energy_aware = 1
kernel.sched_rr_timeslice_ms = 90
kernel.sched_rt_period_us = 1000000
kernel.sched_rt_runtime_us = 950000
kernel.sched_schedstats = 0
kernel.sched_util_clamp_max = 1024
kernel.sched_util_clamp_min = 1024
kernel.sched_util_clamp_min_rt_default = 1024

The list for kernel 5.13 is missing 6 important scheduler variables:

kernel.sched_latency_ns = 24000000
kernel.sched_migration_cost_ns = 500000
kernel.sched_min_granularity_ns = 3000000
kernel.sched_nr_migrate = 32
kernel.sched_tunable_scaling = 1
kernel.sched_wakeup_granularity_ns = 4000000

These are variables which are tweaked by the linux-zen kernel and with kernel 5.13 it is not possible anymore to check them. Why is that?


PS
I found this commit which seems to have to do with it. But I do not know what it actualy means.

1 Like

I found the missing variables. They have been moved to debugfs and can be found here: /sys/kernel/debug/sched

sysctl is no longer able to see them

3 Likes

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.