diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2026-01-24 06:16:42 +0000 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2026-01-29 18:11:56 +0000 |
| commit | 9409e86980302cd495376861de3475b78734bc37 (patch) | |
| tree | 3e51d77367435c95c1ceaf7d77882a4ae39cd00a | |
| parent | a84a39dfe5d1fd98afdf29a74017fce29441b730 (diff) | |
kern/sched: deduplicate sdt probes
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54831
| -rw-r--r-- | sys/kern/sched_4bsd.c | 18 | ||||
| -rw-r--r-- | sys/kern/sched_shim.c | 18 | ||||
| -rw-r--r-- | sys/kern/sched_ule.c | 18 | ||||
| -rw-r--r-- | sys/sys/sched.h | 11 |
4 files changed, 29 insertions, 36 deletions
diff --git a/sys/kern/sched_4bsd.c b/sys/kern/sched_4bsd.c index 55a70885ee28..57d6f87a4dce 100644 --- a/sys/kern/sched_4bsd.c +++ b/sys/kern/sched_4bsd.c @@ -263,24 +263,6 @@ SYSCTL_INT(_kern_sched_4bsd, OID_AUTO, followon, CTLFLAG_RW, "allow threads to share a quantum"); #endif -SDT_PROVIDER_DEFINE(sched); - -SDT_PROBE_DEFINE3(sched, , , change__pri, "struct thread *", - "struct proc *", "uint8_t"); -SDT_PROBE_DEFINE3(sched, , , dequeue, "struct thread *", - "struct proc *", "void *"); -SDT_PROBE_DEFINE4(sched, , , enqueue, "struct thread *", - "struct proc *", "void *", "int"); -SDT_PROBE_DEFINE4(sched, , , lend__pri, "struct thread *", - "struct proc *", "uint8_t", "struct thread *"); -SDT_PROBE_DEFINE2(sched, , , load__change, "int", "int"); -SDT_PROBE_DEFINE2(sched, , , off__cpu, "struct thread *", - "struct proc *"); -SDT_PROBE_DEFINE(sched, , , on__cpu); -SDT_PROBE_DEFINE(sched, , , remain__cpu); -SDT_PROBE_DEFINE2(sched, , , surrender, "struct thread *", - "struct proc *"); - static __inline void sched_load_add(void) { diff --git a/sys/kern/sched_shim.c b/sys/kern/sched_shim.c index 9d96c1a2d550..4f000d8ace0c 100644 --- a/sys/kern/sched_shim.c +++ b/sys/kern/sched_shim.c @@ -102,6 +102,24 @@ SCHED_STAT_DEFINE(ithread_demotions, "Interrupt thread priority demotions"); SCHED_STAT_DEFINE(ithread_preemptions, "Interrupt thread preemptions due to time-sharing"); +SDT_PROVIDER_DEFINE(sched); + +SDT_PROBE_DEFINE3(sched, , , change__pri, "struct thread *", + "struct proc *", "uint8_t"); +SDT_PROBE_DEFINE3(sched, , , dequeue, "struct thread *", + "struct proc *", "void *"); +SDT_PROBE_DEFINE4(sched, , , enqueue, "struct thread *", + "struct proc *", "void *", "int"); +SDT_PROBE_DEFINE4(sched, , , lend__pri, "struct thread *", + "struct proc *", "uint8_t", "struct thread *"); +SDT_PROBE_DEFINE2(sched, , , load__change, "int", "int"); +SDT_PROBE_DEFINE2(sched, , , off__cpu, "struct thread *", + "struct proc *"); +SDT_PROBE_DEFINE(sched, , , on__cpu); +SDT_PROBE_DEFINE(sched, , , remain__cpu); +SDT_PROBE_DEFINE2(sched, , , surrender, "struct thread *", + "struct proc *"); + static char sched_name[32] = "ULE"; SET_DECLARE(sched_instance_set, struct sched_selection); diff --git a/sys/kern/sched_ule.c b/sys/kern/sched_ule.c index 201d9c33dda7..33a578814e0e 100644 --- a/sys/kern/sched_ule.c +++ b/sys/kern/sched_ule.c @@ -409,24 +409,6 @@ static int sysctl_kern_sched_ule_topology_spec_internal(struct sbuf *sb, struct cpu_group *cg, int indent); #endif -SDT_PROVIDER_DEFINE(sched); - -SDT_PROBE_DEFINE3(sched, , , change__pri, "struct thread *", - "struct proc *", "uint8_t"); -SDT_PROBE_DEFINE3(sched, , , dequeue, "struct thread *", - "struct proc *", "void *"); -SDT_PROBE_DEFINE4(sched, , , enqueue, "struct thread *", - "struct proc *", "void *", "int"); -SDT_PROBE_DEFINE4(sched, , , lend__pri, "struct thread *", - "struct proc *", "uint8_t", "struct thread *"); -SDT_PROBE_DEFINE2(sched, , , load__change, "int", "int"); -SDT_PROBE_DEFINE2(sched, , , off__cpu, "struct thread *", - "struct proc *"); -SDT_PROBE_DEFINE(sched, , , on__cpu); -SDT_PROBE_DEFINE(sched, , , remain__cpu); -SDT_PROBE_DEFINE2(sched, , , surrender, "struct thread *", - "struct proc *"); - /* * Print the threads waiting on a run-queue. */ diff --git a/sys/sys/sched.h b/sys/sys/sched.h index bc8022084de3..e4bd5211c1ae 100644 --- a/sys/sys/sched.h +++ b/sys/sys/sched.h @@ -69,6 +69,7 @@ #include <sys/pcpu.h> #endif #include <sys/linker_set.h> +#include <sys/sdt.h> struct proc; struct thread; @@ -234,6 +235,16 @@ SYSINIT(name, SI_SUB_LAST, SI_ORDER_MIDDLE, name ## _add_proc, NULL); SCHED_STAT_DECLARE(ithread_demotions); SCHED_STAT_DECLARE(ithread_preemptions); +SDT_PROBE_DECLARE(sched, , , change__pri); +SDT_PROBE_DECLARE(sched, , , dequeue); +SDT_PROBE_DECLARE(sched, , , enqueue); +SDT_PROBE_DECLARE(sched, , , lend__pri); +SDT_PROBE_DECLARE(sched, , , load__change); +SDT_PROBE_DECLARE(sched, , , off__cpu); +SDT_PROBE_DECLARE(sched, , , on__cpu); +SDT_PROBE_DECLARE(sched, , , remain__cpu); +SDT_PROBE_DECLARE(sched, , , surrender); + /* * Fixup scheduler state for proc0 and thread0 */ |
