Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/sched.h
Show First 20 Lines • Show All 200 Lines • ▼ Show 20 Lines | static void name ## _add_proc(void *dummy __unused) \ | ||||
SYSCTL_ADD_PROC(NULL, \ | SYSCTL_ADD_PROC(NULL, \ | ||||
SYSCTL_STATIC_CHILDREN(_kern_sched_stats), OID_AUTO, \ | SYSCTL_STATIC_CHILDREN(_kern_sched_stats), OID_AUTO, \ | ||||
#name, CTLTYPE_LONG|CTLFLAG_RD|CTLFLAG_MPSAFE, \ | #name, CTLTYPE_LONG|CTLFLAG_RD|CTLFLAG_MPSAFE, \ | ||||
ptr, 0, sysctl_dpcpu_long, "LU", descr); \ | ptr, 0, sysctl_dpcpu_long, "LU", descr); \ | ||||
} \ | } \ | ||||
SYSINIT(name, SI_SUB_LAST, SI_ORDER_MIDDLE, name ## _add_proc, NULL); | SYSINIT(name, SI_SUB_LAST, SI_ORDER_MIDDLE, name ## _add_proc, NULL); | ||||
#define SCHED_STAT_DEFINE(name, descr) \ | #define SCHED_STAT_DEFINE(name, descr) \ | ||||
DPCPU_DEFINE(unsigned long, name); \ | DPCPU_GLOBAL_DEFINE(unsigned long, name); \ | ||||
SCHED_STAT_DEFINE_VAR(name, &DPCPU_NAME(name), descr) | SCHED_STAT_DEFINE_VAR(name, &DPCPU_NAME(name), descr) | ||||
/* | /* | ||||
* Sched stats are always incremented in critical sections so no atomic | * Sched stats are always incremented in critical sections so no atomic | ||||
* is necesssary to increment them. | * is necesssary to increment them. | ||||
*/ | */ | ||||
#define SCHED_STAT_INC(var) DPCPU_GET(var)++; | #define SCHED_STAT_INC(var) DPCPU_GET(var)++; | ||||
#else | #else | ||||
#define SCHED_STAT_DEFINE_VAR(name, descr, ptr) | #define SCHED_STAT_DEFINE_VAR(name, descr, ptr) | ||||
▲ Show 20 Lines • Show All 49 Lines • Show Last 20 Lines |