33#include <sys/kernel.h>
34#include <sys/kthread.h>
38#include <sys/resourcevar.h>
40#include <sys/unistd.h>
65 STAILQ_FOREACH(pc, &cpuhead, pc_allcpu) {
69 RFSTOPPED | RFHIGHPID, 0,
"idle",
"idle: cpu%d", pc->pc_cpuid);
70 pc->pc_idlethread = td;
73 RFSTOPPED | RFHIGHPID, 0,
"idle",
"idle");
74 PCPU_SET(idlethread, td);
77 panic(
"idle_setup: kproc_create error %d\n", error);
81 td->td_flags |= TDF_IDLETD | TDF_NOLOAD;
static void idle_setup(void *dummy)
SYSINIT(idle_setup, SI_SUB_SCHED_IDLE, SI_ORDER_FIRST, idle_setup, NULL)
int kproc_kthread_add(void(*func)(void *), void *arg, struct proc **procptr, struct thread **tdptr, int flags, int pages, const char *procname, const char *fmt,...)
void panic(const char *fmt,...)
void sched_idletd(void *dummy)
void sched_class(struct thread *td, int class)
void sched_prio(struct thread *td, u_char prio)