Lines Matching refs:cpup
201 xc_init_cpu(struct cpu *cpup) in xc_init_cpu() argument
218 msg->xc_master = cpup->cpu_id; in xc_init_cpu()
219 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu()
220 } else if (cpu[c] != NULL && cpu[c] != cpup) { in xc_init_cpu()
235 msg->xc_master = cpup->cpu_id; in xc_init_cpu()
236 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu()
246 msg->xc_master = cpup->cpu_id; in xc_init_cpu()
247 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu()
255 xc_fini_cpu(struct cpu *cpup) in xc_fini_cpu() argument
259 ASSERT((cpup->cpu_flags & CPU_READY) == 0); in xc_fini_cpu()
260 ASSERT(cpup->cpu_m.xc_msgbox == NULL); in xc_fini_cpu()
261 ASSERT(cpup->cpu_m.xc_work_cnt == 0); in xc_fini_cpu()
263 while ((msg = xc_extract(&cpup->cpu_m.xc_free)) != NULL) { in xc_fini_cpu()
272 xc_flush_cpu(struct cpu *cpup) in xc_flush_cpu() argument
276 ASSERT((cpup->cpu_flags & CPU_READY) == 0); in xc_flush_cpu()
284 pause_cpus(cpup, NULL); in xc_flush_cpu()
288 if (cpup->cpu_m.xc_work_cnt == 0) { in xc_flush_cpu()
294 if (!BT_TEST(xc_priority_set, cpup->cpu_id)) { in xc_flush_cpu()
463 struct cpu *cpup; in xc_common() local
494 cpup = cpu[c]; in xc_common()
495 if (cpup == NULL || !(cpup->cpu_flags & CPU_READY)) in xc_common()
523 cnt = xc_increment(&cpup->cpu_m); in xc_common()
524 xc_insert(&cpup->cpu_m.xc_msgbox, msg); in xc_common()
525 if (cpup != CPU) { in xc_common()
557 struct cpu *cpup; in xc_priority_common() local
563 cpup = cpu[c]; in xc_priority_common()
564 if (cpup == NULL || !(cpup->cpu_flags & CPU_READY)) in xc_priority_common()
585 if (cpup->cpu_m.xc_work_cnt > 0) in xc_priority_common()
586 xc_decrement(&cpup->cpu_m); in xc_priority_common()
605 cpup = cpu[c]; in xc_priority_common()
606 if (cpup == NULL || !(cpup->cpu_flags & CPU_READY) || in xc_priority_common()
607 cpup == CPU) in xc_priority_common()
609 (void) xc_increment(&cpup->cpu_m); in xc_priority_common()
613 (void) atomic_cas_ptr(&cpup->cpu_m.xc_msgbox, in xc_priority_common()
614 cpup->cpu_m.xc_msgbox, cpup->cpu_m.xc_msgbox); in xc_priority_common()