disp_t
cpupart_disp_threads(disp_t *disp)
disp_t disp;
if (mdb_vread(&disp, sizeof (disp_t), (uintptr_t)cpu->cpu_disp) == -1) {
disp_t disp;
if (mdb_vread(&disp, sizeof (disp_t), (uintptr_t)cpu.cpu_disp) == -1) {
disp_t cpu0_disp; /* boot CPU's dispatch queue */
search_disp_queues(disp_t *dp, kthread_t *tp)
disp_t *dp;
DTRACE_SCHED3(enqueue, kthread_t *, tp, disp_t *, dp, int, 0);
disp_t *dp;
DTRACE_SCHED3(enqueue, kthread_t *, tp, disp_t *, dp, int, 1);
disp_t *dp;
DTRACE_SCHED3(enqueue, kthread_t *, tp, disp_t *, dp, int, borf);
static kthread_t *disp_getbest(disp_t *from);
static kthread_t *disp_ratify(kthread_t *tp, disp_t *kpq);
disp_t *dp;
DTRACE_SCHED2(dequeue, kthread_t *, tp, disp_t *, dp);
disp_ratify(kthread_t *tp, disp_t *kpq)
disp_t *kpq; /* kp queue for this partition */
disp_fix_unbound_pri(disp_t *dp, pri_t pri)
disp_t *dp;
disp_getbest(disp_t *dp)
disp_t *dp = cp->cpu_disp;
disp_dq_alloc(struct disp_queue_info *dptr, int numpris, disp_t *dp)
disp_t *dp;
disp_t *dp;
dp = kmem_alloc(sizeof (disp_t), KM_SLEEP);
bzero(dp, sizeof (disp_t));
kmem_free(cp->cpu_disp, sizeof (disp_t));
disp_kp_alloc(disp_t *dq, pri_t npri)
disp_kp_free(disp_t *dq)
disp_t *dp = cp->cpu_disp;
disp_t *kpq;
disp_t *dp;
disp_t *dp;
disp_t *kpq;
disp_t *dp);
DTRACE_SCHED2(dequeue, kthread_t *, tp, disp_t *, dp);
disp_t cp_kp_queue; /* partition-wide kpreempt queue */
disp_t *cpu_disp; /* dispatch queue data */
extern void disp_kp_alloc(disp_t *, pri_t); /* allocate kp queue */
extern void disp_kp_free(disp_t *); /* free kp queue */
extern disp_t cpu0_disp;
bzero(&cpu0_disp, sizeof (disp_t));
extern disp_t cpu0_disp;
bzero(&cpu0_disp, sizeof (disp_t));