Re: sched: Move SCHED_DEBUG sysctl to debugfs

From: Christian Borntraeger
Date: Tue Apr 27 2021 - 11:18:28 EST




On 27.04.21 17:09, Steven Rostedt wrote:
On Tue, 27 Apr 2021 16:59:25 +0200
Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:

Peter,

I just realized that we moved away sysctl tunabled to debugfs in next.
We have seen several cases where it was benefitial to set
sched_migration_cost_ns to a lower value. For example with KVM I can
easily get 50% more transactions with 50000 instead of 500000.
Until now it was possible to use tuned or /etc/sysctl.conf to set
these things permanently.

Given that some people do not want to have debugfs mounted all the time
I would consider this a regression. The sysctl tunable was always
available.

I am ok with the "informational" things being in debugfs, but not
the tunables. So how do we proceed here?

Should there be a schedfs created?

This is the reason I created the tracefs file system, was to get the
tracing code out of debugfs, as debugfs is a catch all for everything and
can lead to poor and insecure interfaces that people do not want to add on
systems that they still want tracing on.

Or perhaps we should add a "tunefs" for tunables that are stable interfaces
that should not be in /proc but also not in debugfs.

Yes, a tunefs or schedfs could be considered a replacement for sysctl.
It will still break existing setups with kernel.sched* things in /etc/sysctl.conf
but at least there is a stable transition path.