Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/subr_pcpu.c
Show First 20 Lines • Show All 89 Lines • ▼ Show 20 Lines | pcpu_init(struct pcpu *pcpu, int cpuid, size_t size) | ||||
KASSERT(cpuid >= 0 && cpuid < MAXCPU, | KASSERT(cpuid >= 0 && cpuid < MAXCPU, | ||||
("pcpu_init: invalid cpuid %d", cpuid)); | ("pcpu_init: invalid cpuid %d", cpuid)); | ||||
pcpu->pc_cpuid = cpuid; | pcpu->pc_cpuid = cpuid; | ||||
cpuid_to_pcpu[cpuid] = pcpu; | cpuid_to_pcpu[cpuid] = pcpu; | ||||
STAILQ_INSERT_TAIL(&cpuhead, pcpu, pc_allcpu); | STAILQ_INSERT_TAIL(&cpuhead, pcpu, pc_allcpu); | ||||
cpu_pcpu_init(pcpu, cpuid, size); | cpu_pcpu_init(pcpu, cpuid, size); | ||||
pcpu->pc_rm_queue.rmq_next = &pcpu->pc_rm_queue; | pcpu->pc_rm_queue.rmq_next = &pcpu->pc_rm_queue; | ||||
pcpu->pc_rm_queue.rmq_prev = &pcpu->pc_rm_queue; | pcpu->pc_rm_queue.rmq_prev = &pcpu->pc_rm_queue; | ||||
pcpu->pc_zpcpu_offset = zpcpu_offset_cpu(cpuid); | |||||
} | } | ||||
void | void | ||||
dpcpu_init(void *dpcpu, int cpuid) | dpcpu_init(void *dpcpu, int cpuid) | ||||
{ | { | ||||
struct pcpu *pcpu; | struct pcpu *pcpu; | ||||
pcpu = pcpu_find(cpuid); | pcpu = pcpu_find(cpuid); | ||||
▲ Show 20 Lines • Show All 313 Lines • Show Last 20 Lines |