Date: Wed, 11 Feb 2026 05:17:25 +0000 From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 684091fa5e3a - stable/15 - kern/sched_shim.c: Add sysctl kern.sched.available Message-ID: <698c10e5.26451.ed8431f@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=684091fa5e3a86d4682fc466c9c582d1e645e047 commit 684091fa5e3a86d4682fc466c9c582d1e645e047 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2026-01-22 05:57:49 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2026-02-11 05:12:36 +0000 kern/sched_shim.c: Add sysctl kern.sched.available (cherry picked from commit ba8f429f42ecae1881d0face52df87ad1489af15) --- sys/kern/sched_shim.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/sys/kern/sched_shim.c b/sys/kern/sched_shim.c index 96c824745815..f25b803bae82 100644 --- a/sys/kern/sched_shim.c +++ b/sys/kern/sched_shim.c @@ -14,6 +14,7 @@ #include <sys/lock.h> #include <sys/proc.h> #include <sys/runq.h> +#include <sys/sbuf.h> #include <sys/sched.h> #include <sys/sysctl.h> #include <machine/ifunc.h> @@ -166,3 +167,33 @@ SYSCTL_NODE(_kern, OID_AUTO, sched, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, SYSCTL_STRING(_kern_sched, OID_AUTO, name, CTLFLAG_RD, sched_name, 0, "Scheduler name"); + +static int +sysctl_kern_sched_available(SYSCTL_HANDLER_ARGS) +{ + struct sched_selection *s, **ss; + struct sbuf *sb, sm; + int error; + bool first; + + sb = sbuf_new_for_sysctl(&sm, NULL, 0, req); + if (sb == NULL) + return (ENOMEM); + first = true; + SET_FOREACH(ss, sched_instance_set) { + s = *ss; + if (first) + first = false; + else + sbuf_cat(sb, ","); + sbuf_cat(sb, s->name); + } + error = sbuf_finish(sb); + sbuf_delete(sb); + return (error); +} + +SYSCTL_PROC(_kern_sched, OID_AUTO, available, + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, + NULL, 0, sysctl_kern_sched_available, "A", + "List of available schedulers");home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?698c10e5.26451.ed8431f>
