/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | x_call.c | 152 queue == &cpu[msg->xc_master]->cpu_m.xc_free); in xc_insert() 188 struct machcpu *mcpup = &CPU->cpu_m; in xc_get() 218 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu() 230 xc_insert(&cpu[c]->cpu_m.xc_free, msg); in xc_init_cpu() 235 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu() 246 xc_insert(&cpup->cpu_m.xc_free, msg); in xc_init_cpu() 259 ASSERT(cpup->cpu_m.xc_msgbox == NULL); in xc_fini_cpu() 260 ASSERT(cpup->cpu_m.xc_work_cnt == 0); in xc_fini_cpu() 262 while ((msg = xc_extract(&cpup->cpu_m.xc_free)) != NULL) { in xc_fini_cpu() 287 if (cpup->cpu_m.xc_work_cnt == 0) { in xc_flush_cpu() [all …]
|
H A D | mp_pc.c | 210 ntss->tss_ist4 = (uintptr_t)&cp->cpu_m.mcpu_kpti_dbg.kf_tr_rsp; in mach_cpucontext_alloc_tables() 216 ntss->tss_ist5 = (uintptr_t)&cp->cpu_m.mcpu_kpti_flt.kf_tr_rsp; in mach_cpucontext_alloc_tables() 221 ntss->tss_ist6 = (uint64_t)&cp->cpu_m.mcpu_kpti.kf_tr_rsp; in mach_cpucontext_alloc_tables() 308 return (cp->cpu_m.mcpu_mach_ctx_ptr); in mach_cpucontext_xalloc() 369 cp->cpu_m.mcpu_mach_ctx_ptr = arg; in mach_cpucontext_xfree() 377 cp->cpu_m.mcpu_mach_ctx_ptr = arg; in mach_cpucontext_xfree() 395 cp->cpu_m.mcpu_mach_ctx_ptr = NULL; in mach_cpucontext_xfree() 624 if (cp->cpu_m.mcpu_cmi_hdl != NULL) { in mp_cpu_poweroff() 625 cmi_fini(cp->cpu_m.mcpu_cmi_hdl); in mp_cpu_poweroff() 626 cp->cpu_m.mcpu_cmi_hdl = NULL; in mp_cpu_poweroff() [all …]
|
H A D | intr.c | 478 (offsetof(cpu_t, cpu_m) + offsetof(struct machcpu, member)) 541 struct machcpu *mcpu = &cpu->cpu_m; in hilevel_intr_prolog() 639 struct machcpu *mcpu = &cpu->cpu_m; in hilevel_intr_epilog() 722 struct machcpu *mcpu = &cpu->cpu_m; in intr_thread_prolog() 790 struct machcpu *mcpu = &cpu->cpu_m; in intr_thread_epilog() 934 mcpu = &cpu->cpu_m; in intr_get_time() 964 struct machcpu *mcpu = &cpu->cpu_m; in dosoftint_prolog() 1071 struct machcpu *mcpu = &cpu->cpu_m; in dosoftint_epilog() 1212 hrt = (hrtime_t)cpup->cpu_m.intrstat[i + 1][0]; in cpu_kstat_intrstat_update() 1254 cpu->cpu_m.intrstat[t->t_pil][0] += interval; in cpu_intr_swtch_enter() [all …]
|
H A D | mp_startup.c | 312 cp->cpu_m.mcpu_istamp = cpun << 16; in mp_cpu_configure_common() 422 cp->cpu_m.mcpu_ldt = kmem_zalloc(LDT_CPU_SIZE, KM_SLEEP); in mp_cpu_configure_common() 423 cp->cpu_m.mcpu_ldt_len = 0; in mp_cpu_configure_common() 442 cp->cpu_m.mcpu_mwait = cpuid_mwait_alloc(cp); in mp_cpu_configure_common() 443 cp->cpu_m.mcpu_idle_cpu = cpu_idle_mwait; in mp_cpu_configure_common() 446 cp->cpu_m.mcpu_idle_cpu = cpu_idle; in mp_cpu_configure_common() 560 if (cp->cpu_m.mcpu_mwait != NULL) { in mp_cpu_unconfigure_common() 562 cp->cpu_m.mcpu_mwait = NULL; in mp_cpu_unconfigure_common() 571 kmem_free(cp->cpu_m.mcpu_ldt, LDT_CPU_SIZE); in mp_cpu_unconfigure_common() 572 cp->cpu_m.mcpu_ldt = NULL; in mp_cpu_unconfigure_common() [all …]
|
/illumos-gate/usr/src/uts/i86pc/sys/ |
H A D | machcpuvar.h | 248 #define MWAIT_WAKEUP(cpu) (*((cpu)->cpu_m.mcpu_mwait) = MWAIT_RUNNING) 254 #define cpu_nodeid cpu_m.mcpu_nodeid 255 #define cpu_pri cpu_m.mcpu_pri 256 #define cpu_current_hat cpu_m.mcpu_current_hat 257 #define cpu_hat_info cpu_m.mcpu_hat_info 258 #define cpu_ppaddr_mutex cpu_m.mcpu_ppaddr_mutex 259 #define cpu_gdt cpu_m.mcpu_gdt 260 #define cpu_idt cpu_m.mcpu_idt 261 #define cpu_tss cpu_m.mcpu_tss 262 #define cpu_caddr1 cpu_m.mcpu_caddr1 [all …]
|
/illumos-gate/usr/src/uts/i86pc/ml/ |
H A D | offsets.in | 215 cpu_m.pil_high_start CPU_PIL_HIGH_START 216 cpu_m.intrstat CPU_INTRSTAT 217 cpu_m.mcpu_current_hat CPU_CURRENT_HAT 218 cpu_m.mcpu_gdt CPU_GDT 219 cpu_m.mcpu_idt CPU_IDT 220 cpu_m.mcpu_tss CPU_TSS 221 cpu_m.mcpu_softinfo CPU_SOFTINFO 222 cpu_m.mcpu_pri CPU_PRI 224 cpu_m.mcpu_vcpu_info CPU_VCPU_INFO 228 cpu_m.mcpu_kpti.kf_kernel_cr3 CPU_KPTI_KCR3 [all …]
|
/illumos-gate/usr/src/uts/sun4v/cpu/ |
H A D | generic.c | 163 cp->cpu_m.cpu_ipipe = cpunodes[cp->cpu_id].exec_unit_mapping; in cpu_map_exec_units() 164 if (cp->cpu_m.cpu_ipipe == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 165 cp->cpu_m.cpu_ipipe = (id_t)(cp->cpu_id); in cpu_map_exec_units() 167 cp->cpu_m.cpu_fpu = cpunodes[cp->cpu_id].fpu_mapping; in cpu_map_exec_units() 168 if (cp->cpu_m.cpu_fpu == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 169 cp->cpu_m.cpu_fpu = (id_t)(cp->cpu_id); in cpu_map_exec_units() 177 cp->cpu_m.cpu_mpipe = cpunodes[cp->cpu_id].l2_cache_mapping; in cpu_map_exec_units() 178 if (cp->cpu_m.cpu_mpipe == NO_L2_CACHE_MAPPING_FOUND) in cpu_map_exec_units() 179 cp->cpu_m.cpu_mpipe = CPU_L2_CACHEID_INVALID; in cpu_map_exec_units() 181 cp->cpu_m.cpu_core = (id_t)(cp->cpu_id); in cpu_map_exec_units() [all …]
|
H A D | niagara.c | 182 cp->cpu_m.cpu_ipipe = cpunodes[cp->cpu_id].exec_unit_mapping; in cpu_map_exec_units() 183 if (cp->cpu_m.cpu_ipipe == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 184 cp->cpu_m.cpu_ipipe = (id_t)(cp->cpu_id); in cpu_map_exec_units() 186 cp->cpu_m.cpu_fpu = cpunodes[cp->cpu_id].fpu_mapping; in cpu_map_exec_units() 187 if (cp->cpu_m.cpu_fpu == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 188 cp->cpu_m.cpu_fpu = (id_t)(cp->cpu_id); in cpu_map_exec_units() 193 cp->cpu_m.cpu_core = cp->cpu_m.cpu_ipipe; in cpu_map_exec_units() 199 cp->cpu_m.cpu_chip = 0; in cpu_map_exec_units() 200 cp->cpu_m.cpu_mpipe = 0; in cpu_map_exec_units()
|
H A D | niagara2.c | 209 cp->cpu_m.cpu_ipipe = cpunodes[cp->cpu_id].exec_unit_mapping; in cpu_map_exec_units() 210 if (cp->cpu_m.cpu_ipipe == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 211 cp->cpu_m.cpu_ipipe = (id_t)(cp->cpu_id); in cpu_map_exec_units() 213 cp->cpu_m.cpu_fpu = cpunodes[cp->cpu_id].fpu_mapping; in cpu_map_exec_units() 214 if (cp->cpu_m.cpu_fpu == NO_EU_MAPPING_FOUND) in cpu_map_exec_units() 215 cp->cpu_m.cpu_fpu = (id_t)(cp->cpu_id); in cpu_map_exec_units() 220 cp->cpu_m.cpu_core = cp->cpu_m.cpu_fpu; in cpu_map_exec_units() 228 cp->cpu_m.cpu_mpipe = cpunodes[cp->cpu_id].l2_cache_mapping; in cpu_map_exec_units() 229 if (cp->cpu_m.cpu_mpipe == NO_L2_CACHE_MAPPING_FOUND) in cpu_map_exec_units() 230 cp->cpu_m.cpu_mpipe = CPU_L2_CACHEID_INVALID; in cpu_map_exec_units() [all …]
|
/illumos-gate/usr/src/uts/intel/os/ |
H A D | microcode.c | 116 ASSERT(cp->cpu_m.mcpu_ucode_info == NULL); in ucode_alloc_space() 117 cp->cpu_m.mcpu_ucode_info = in ucode_alloc_space() 118 kmem_zalloc(sizeof (*cp->cpu_m.mcpu_ucode_info), KM_SLEEP); in ucode_alloc_space() 124 ASSERT(cp->cpu_m.mcpu_ucode_info != NULL); in ucode_free_space() 125 ASSERT(cp->cpu_m.mcpu_ucode_info != &cpu_ucode_info0); in ucode_free_space() 126 kmem_free(cp->cpu_m.mcpu_ucode_info, in ucode_free_space() 127 sizeof (*cp->cpu_m.mcpu_ucode_info)); in ucode_free_space() 128 cp->cpu_m.mcpu_ucode_info = NULL; in ucode_free_space() 184 cpu_ucode_info_t *uinfop = CPU->cpu_m.mcpu_ucode_info; in ucode_write() 267 bcopy(cpu->cpu_m.mcpu_ucode_info, &uusp->info, in ucode_update() [all …]
|
H A D | smt.c | 215 cpu_smt_t *sibsmt = &sib->cpu_m.mcpu_smt; in yield_to_vcpu() 261 cpu_smt_t *smt = &CPU->cpu_m.mcpu_smt; in smt_acquire() 274 sibsmt = &smt->cs_sib->cpu_m.mcpu_smt; in smt_acquire() 319 cpu_smt_t *smt = &CPU->cpu_m.mcpu_smt; in smt_release() 332 sibsmt = &smt->cs_sib->cpu_m.mcpu_smt; in smt_release() 394 smt = &CPU->cpu_m.mcpu_smt; in smt_begin_intr() 422 smt = &CPU->cpu_m.mcpu_smt; in smt_end_intr() 461 smt = &cp->cpu_m.mcpu_smt; in smt_mark() 539 if ((sib = cp->cpu_m.mcpu_smt.cs_sib) == NULL) in smt_should_run() 542 sibstate = sib->cpu_m.mcpu_smt.cs_state; in smt_should_run() [all …]
|
H A D | cpuid.c | 2167 ASSERT(cpu->cpu_m.mcpu_cpi == NULL); in cpuid_alloc_space() 2168 cpu->cpu_m.mcpu_cpi = in cpuid_alloc_space() 2169 kmem_zalloc(sizeof (*cpu->cpu_m.mcpu_cpi), KM_SLEEP); in cpuid_alloc_space() 2175 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_free_space() 2192 cpu->cpu_m.mcpu_cpi = NULL; in cpuid_free_space() 2372 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_gather_amd_topology_leaves() 2510 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_leafB_getids() 2585 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_intel_getids() 2688 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_amd_get_coreid() 2728 struct cpuid_info *cpi = cpu->cpu_m.mcpu_cpi; in cpuid_amd_getids() [all …]
|
/illumos-gate/usr/src/cmd/mdb/i86pc/modules/unix/ |
H A D | xcall.c | 29 mdb_xcall_machcpu_t cpu_m; member 110 if (xcpu.cpu_m.xc_curmsg != NULL) { in xcall_get_msgs() 111 msgaddr = (uintptr_t)xcpu.cpu_m.xc_curmsg; in xcall_get_msgs() 124 for (msgaddr = (uintptr_t)xcpu.cpu_m.xc_msgbox; in xcall_get_msgs() 219 xcpu.cpu_id, xcpu.cpu_m.xc_work_cnt); in xcall_dcmd() 224 xcpu.cpu_id, xcpu.cpu_m.xc_work_cnt, in xcall_dcmd() 225 xcpu.cpu_m.xc_data.xc_func, xcpu.cpu_m.xc_data.xc_a1, in xcall_dcmd() 226 xcpu.cpu_m.xc_data.xc_a2, xcpu.cpu_m.xc_data.xc_a3); in xcall_dcmd()
|
/illumos-gate/usr/src/uts/sun4/ml/ |
H A D | offsets.in | 359 cpu_m CPU_MCPU 360 cpu_m.divisor CPU_DIVISOR 361 cpu_m.intrstat CPU_INTRSTAT 362 cpu_m.pil_high_start CPU_PIL_HIGH_START 363 cpu_m.intr_tail INTR_TAIL 364 cpu_m.intr_head INTR_HEAD 365 cpu_m.tl1_hdlr CPU_TL1_HDLR 366 cpu_m.intrcnt CPU_INTRCNT 367 cpu_m.tmp1 CPU_TMP1 368 cpu_m.tmp2 CPU_TMP2 [all …]
|
/illumos-gate/usr/src/uts/sun4v/os/ |
H A D | cmp.c | 86 return (cpu[cpuid]->cpu_m.cpu_chip); in cmp_cpu_to_chip() 120 return (cpu->cpu_m.cpu_ipipe); in pg_plat_hw_instance_id() 122 return (cpu->cpu_m.cpu_chip); in pg_plat_hw_instance_id() 124 return (cpu->cpu_m.cpu_mpipe); in pg_plat_hw_instance_id() 126 return (cpu->cpu_m.cpu_fpu); in pg_plat_hw_instance_id() 176 return (cpu->cpu_m.cpu_core); in pg_plat_get_core_id()
|
/illumos-gate/usr/src/uts/i86pc/os/cpupm/ |
H A D | cpu_idle.c | 181 struct machcpu *mcpu = &(cp->cpu_m); in cstate_wakeup() 256 mcpu_mwait = cpu_seq[cpu_found]->cpu_m.mcpu_mwait; in cstate_wakeup() 388 volatile uint32_t *mcpu_mwait = CPU->cpu_m.mcpu_mwait; in acpi_cpu_cstate() 650 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpu_acpi_idle() 746 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpu_idle_init() 831 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpu_idle_fini() 839 idle_cpu = cp->cpu_m.mcpu_idle_cpu = non_deep_idle_cpu; in cpu_idle_fini() 879 CPU->cpu_m.mcpu_idle_cpu = non_deep_idle_cpu; in cpu_idle_stop_sync() 886 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpu_idle_stop() 896 cp->cpu_m.mcpu_idle_cpu = cpu_idle_stop_sync; in cpu_idle_stop() [all …]
|
H A D | cpupm_mach.c | 149 struct machcpu *mcpu = &(cp->cpu_m); in cpupm_init() 155 mach_state = cp->cpu_m.mcpu_pm_mach_state = in cpupm_init() 243 cp->cpu_m.mcpu_idle_cpu = cpu_acpi_idle; in cpupm_init() 300 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_free() 339 cp->cpu_m.mcpu_pm_mach_state = NULL; in cpupm_free() 378 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_is_ready() 428 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpupm_alloc_domains() 538 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpupm_remove_domains() 589 mach_state = (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpupm_alloc_ms_cstate() 601 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpupm_free_ms_cstate() [all …]
|
H A D | cpupm_throttle.c | 162 (cpupm_mach_state_t *)CPU->cpu_m.mcpu_pm_mach_state; in cpupm_tstate_transition() 231 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_throttle_init() 272 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_throttle_fini() 283 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_throttle_stop() 299 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in cpupm_throttle_get_max() 336 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpupm_throttle_manage_notification()
|
H A D | pwrnow.c | 120 (cpupm_mach_state_t *)CPU->cpu_m.mcpu_pm_mach_state; in pwrnow_pstate_transition() 174 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in pwrnow_init() 227 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in pwrnow_fini() 305 (cpupm_mach_state_t *)(cp->cpu_m.mcpu_pm_mach_state); in pwrnow_stop()
|
/illumos-gate/usr/src/uts/sun4/os/ |
H A D | mp_states.c | 67 CPU->cpu_m.in_prom = 1; in cpu_idle_self() 77 CPU->cpu_m.in_prom = 0; in cpu_idle_self() 112 while (!cpu[i]->cpu_m.in_prom && ntries) { in idle_other_cpus() 121 if (!cpu[i]->cpu_m.in_prom) { in idle_other_cpus() 159 while (cpu[i]->cpu_m.in_prom && ntries) { in resume_other_cpus() 168 if (cpu[i]->cpu_m.in_prom) { in resume_other_cpus()
|
/illumos-gate/usr/src/uts/i86pc/io/ |
H A D | cpudrv_mach.c | 67 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpudrv_change_speed() 106 cpudsp->cp->cpu_m.mcpu_pm_mach_state != NULL) { in cpudrv_is_enabled() 108 (cpupm_mach_state_t *)cpudsp->cp->cpu_m.mcpu_pm_mach_state; in cpudrv_is_enabled() 226 mach_state = (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpudrv_notify_handler() 254 (cpupm_mach_state_t *)cp->cpu_m.mcpu_pm_mach_state; in cpudrv_uninstall_notify_handler() 302 (cpudsp->cp->cpu_m.mcpu_pm_mach_state); in cpudrv_mach_init()
|
/illumos-gate/usr/src/uts/sun4u/sys/ |
H A D | machcpuvar.h | 145 #define cpu_startup_thread cpu_m.startup_thread 146 #define CPU_MMU_IDX(cp) ((cp)->cpu_m.cpu_mmu_idx) 147 #define CPU_MMU_CTXP(cp) ((cp)->cpu_m.cpu_mmu_ctxp) 153 #define CPU_PRIVATE(cp) ((cp)->cpu_m.cpu_private)
|
/illumos-gate/usr/src/uts/i86pc/vm/ |
H A D | i86_mmu.c | 67 ((cpu)->cpu_m.mcpu_current_hat != NULL && \ 68 (cpu)->cpu_m.mcpu_current_hat != kas.a_hat) 197 pfn_t gdtpfn = mmu_btop(CPU->cpu_m.mcpu_gdtpa); in xen_kpm_finish_init() 466 ASSERT(CPU->cpu_m.mcpu_kpti.kf_user_cr3 != 0); in invpcid() 468 MMU_PAGESIZE, CPU->cpu_m.mcpu_kpti.kf_user_cr3); in invpcid() 549 ASSERT(CPU->cpu_m.mcpu_kpti.kf_user_cr3 != 0); in mmu_flush_tlb_range() 551 CPU->cpu_m.mcpu_kpti.kf_user_cr3); in mmu_flush_tlb_range()
|
/illumos-gate/usr/src/uts/sun4v/sys/ |
H A D | machcpuvar.h | 188 #define cpu_startup_thread cpu_m.startup_thread 189 #define CPU_MMU_IDX(cp) ((cp)->cpu_m.cpu_mmu_idx) 190 #define CPU_MMU_CTXP(cp) ((cp)->cpu_m.cpu_mmu_ctxp) 196 #define CPU_PRIVATE(cp) ((cp)->cpu_m.cpu_private)
|
/illumos-gate/usr/src/uts/i86xpv/os/ |
H A D | xpv_timestamp.c | 100 src = &CPU->cpu_m.mcpu_vcpu_info->time; in dtrace_xpv_getsystime() 108 stamp = CPU->cpu_m.mcpu_istamp; in dtrace_xpv_getsystime() 128 CPU->cpu_m.mcpu_istamp != stamp); in dtrace_xpv_getsystime()
|