Lines Matching refs:arch

115 	if (kvm_mips_guest_has_msa(&vcpu->arch))  in kvm_vz_config5_guest_wrmask()
122 if (kvm_mips_guest_has_fpu(&vcpu->arch)) { in kvm_vz_config5_guest_wrmask()
158 if (kvm_mips_guest_can_have_fpu(&vcpu->arch)) in kvm_vz_config1_user_wrmask()
175 if (kvm_mips_guest_can_have_msa(&vcpu->arch)) in kvm_vz_config3_user_wrmask()
205 set_bit(priority, &vcpu->arch.pending_exceptions); in kvm_vz_queue_irq()
206 clear_bit(priority, &vcpu->arch.pending_exceptions_clr); in kvm_vz_queue_irq()
211 clear_bit(priority, &vcpu->arch.pending_exceptions); in kvm_vz_dequeue_irq()
212 set_bit(priority, &vcpu->arch.pending_exceptions_clr); in kvm_vz_dequeue_irq()
282 clear_bit(priority, &vcpu->arch.pending_exceptions); in kvm_vz_irq_deliver_cb()
324 clear_bit(priority, &vcpu->arch.pending_exceptions_clr); in kvm_vz_irq_clear_cb()
346 if (mips_hpt_frequency != vcpu->arch.count_hz) in kvm_vz_should_use_htimer()
425 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_restore_timer()
520 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_save_timer()
665 opc = (u32 *)vcpu->arch.pc; in is_eva_am_mapped()
666 if (vcpu->arch.host_cp0_cause & CAUSEF_BD) in is_eva_am_mapped()
799 unsigned int gexccode = (vcpu->arch.host_cp0_guestctl0 & in kvm_vz_badvaddr_to_gpa()
819 u32 *opc = (u32 *) vcpu->arch.pc; in kvm_trap_vz_no_handler()
820 u32 cause = vcpu->arch.host_cp0_cause; in kvm_trap_vz_no_handler()
822 unsigned long badvaddr = vcpu->arch.host_cp0_badvaddr; in kvm_trap_vz_no_handler()
866 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_write_maari()
870 kvm_write_sw_gc0_maari(cop0, ARRAY_SIZE(vcpu->arch.maar) - 1); in kvm_write_maari()
871 else if (val < ARRAY_SIZE(vcpu->arch.maar)) in kvm_write_maari()
879 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_gpsi_cop0()
889 curr_pc = vcpu->arch.pc; in kvm_vz_gpsi_cop0()
932 ARRAY_SIZE(vcpu->arch.maar)); in kvm_vz_gpsi_cop0()
933 val = vcpu->arch.maar[ in kvm_vz_gpsi_cop0()
966 vcpu->arch.gprs[rt] = val; in kvm_vz_gpsi_cop0()
979 val = vcpu->arch.gprs[rt]; in kvm_vz_gpsi_cop0()
987 kvm_mips_write_count(vcpu, vcpu->arch.gprs[rt]); in kvm_vz_gpsi_cop0()
991 vcpu->arch.gprs[rt], in kvm_vz_gpsi_cop0()
1011 ARRAY_SIZE(vcpu->arch.maar)); in kvm_vz_gpsi_cop0()
1012 vcpu->arch.maar[kvm_read_sw_gc0_maari(cop0)] = in kvm_vz_gpsi_cop0()
1068 vcpu->arch.pc = curr_pc; in kvm_vz_gpsi_cop0()
1081 struct kvm_vcpu_arch *arch = &vcpu->arch; in kvm_vz_gpsi_cache() local
1088 curr_pc = vcpu->arch.pc; in kvm_vz_gpsi_cache()
1102 va = arch->gprs[base] + offset; in kvm_vz_gpsi_cache()
1105 cache, op, base, arch->gprs[base], offset); in kvm_vz_gpsi_cache()
1134 curr_pc, vcpu->arch.gprs[31], cache, op, base, arch->gprs[base], in kvm_vz_gpsi_cache()
1137 vcpu->arch.pc = curr_pc; in kvm_vz_gpsi_cache()
1156 curr_pc = vcpu->arch.pc; in kvm_vz_gpsi_lwc2()
1166 hostcfg = read_cpucfg(vcpu->arch.gprs[rs]); in kvm_vz_gpsi_lwc2()
1168 switch (vcpu->arch.gprs[rs]) { in kvm_vz_gpsi_lwc2()
1170 vcpu->arch.gprs[rd] = 0x14c000; in kvm_vz_gpsi_lwc2()
1176 vcpu->arch.gprs[rd] = hostcfg; in kvm_vz_gpsi_lwc2()
1181 vcpu->arch.gprs[rd] = hostcfg; in kvm_vz_gpsi_lwc2()
1184 vcpu->arch.gprs[rd] = hostcfg; in kvm_vz_gpsi_lwc2()
1188 vcpu->arch.gprs[rd] = 0; in kvm_vz_gpsi_lwc2()
1195 inst.loongson3_lscsr_format.fr, vcpu->arch.gprs[rs], curr_pc); in kvm_vz_gpsi_lwc2()
1205 vcpu->arch.pc = curr_pc; in kvm_vz_gpsi_lwc2()
1216 struct kvm_vcpu_arch *arch = &vcpu->arch; in kvm_trap_vz_handle_gpsi() local
1263 arch->gprs[rt] = in kvm_trap_vz_handle_gpsi()
1273 KVM_TRACE_HWR(rd, sel), arch->gprs[rt]); in kvm_trap_vz_handle_gpsi()
1298 struct kvm_vcpu_arch *arch = &vcpu->arch; in kvm_trap_vz_handle_gsfc() local
1318 unsigned int val = arch->gprs[rt]; in kvm_trap_vz_handle_gsfc()
1326 if (!kvm_mips_guest_has_fpu(&vcpu->arch)) in kvm_trap_vz_handle_gsfc()
1356 vcpu->arch.aux_inuse & KVM_MIPS_AUX_MSA) in kvm_trap_vz_handle_gsfc()
1395 vcpu->arch.aux_inuse & KVM_MIPS_AUX_FPU) in kvm_trap_vz_handle_gsfc()
1450 curr_pc = vcpu->arch.pc; in kvm_trap_vz_handle_hc()
1457 vcpu->arch.pc = curr_pc; in kvm_trap_vz_handle_hc()
1484 u32 *opc = (u32 *) vcpu->arch.pc; in kvm_trap_vz_handle_guest_exit()
1485 u32 cause = vcpu->arch.host_cp0_cause; in kvm_trap_vz_handle_guest_exit()
1487 u32 gexccode = (vcpu->arch.host_cp0_guestctl0 & in kvm_trap_vz_handle_guest_exit()
1555 u32 cause = vcpu->arch.host_cp0_cause; in kvm_trap_vz_handle_cop_unusable()
1565 if (WARN_ON(!kvm_mips_guest_has_fpu(&vcpu->arch) || in kvm_trap_vz_handle_cop_unusable()
1566 vcpu->arch.aux_inuse & KVM_MIPS_AUX_FPU)) { in kvm_trap_vz_handle_cop_unusable()
1610 if (!kvm_mips_guest_has_msa(&vcpu->arch) || in kvm_trap_vz_handle_msa_disabled()
1613 vcpu->arch.aux_inuse & KVM_MIPS_AUX_MSA) { in kvm_trap_vz_handle_msa_disabled()
1626 u32 *opc = (u32 *) vcpu->arch.pc; in kvm_trap_vz_handle_tlb_ld_miss()
1627 u32 cause = vcpu->arch.host_cp0_cause; in kvm_trap_vz_handle_tlb_ld_miss()
1628 ulong badvaddr = vcpu->arch.host_cp0_badvaddr; in kvm_trap_vz_handle_tlb_ld_miss()
1635 if (kvm_is_ifetch_fault(&vcpu->arch)) { in kvm_trap_vz_handle_tlb_ld_miss()
1673 u32 *opc = (u32 *) vcpu->arch.pc; in kvm_trap_vz_handle_tlb_st_miss()
1674 u32 cause = vcpu->arch.host_cp0_cause; in kvm_trap_vz_handle_tlb_st_miss()
1675 ulong badvaddr = vcpu->arch.host_cp0_badvaddr; in kvm_trap_vz_handle_tlb_st_miss()
1684 vcpu->arch.host_cp0_badvaddr = badvaddr; in kvm_trap_vz_handle_tlb_st_miss()
1800 ret += 1 + ARRAY_SIZE(vcpu->arch.maar); in kvm_vz_num_regs()
1853 for (i = 0; i < ARRAY_SIZE(vcpu->arch.maar); ++i) { in kvm_vz_copy_reg_indices()
1914 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_get_one_reg()
2077 if (idx >= ARRAY_SIZE(vcpu->arch.maar)) in kvm_vz_get_one_reg()
2079 *v = vcpu->arch.maar[idx]; in kvm_vz_get_one_reg()
2084 *v = kvm_read_sw_gc0_maari(&vcpu->arch.cop0); in kvm_vz_get_one_reg()
2120 *v = vcpu->arch.count_ctl; in kvm_vz_get_one_reg()
2123 *v = ktime_to_ns(vcpu->arch.count_resume); in kvm_vz_get_one_reg()
2126 *v = vcpu->arch.count_hz; in kvm_vz_get_one_reg()
2138 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_set_one_reg()
2354 if (idx >= ARRAY_SIZE(vcpu->arch.maar)) in kvm_vz_set_one_reg()
2356 vcpu->arch.maar[idx] = mips_process_maar(dmtc_op, v); in kvm_vz_set_one_reg()
2446 vcpu->arch.vzguestid[i] = 0; in kvm_vz_check_requests()
2469 if (wired > vcpu->arch.wired_tlb_limit) { in kvm_vz_vcpu_save_wired()
2470 tlbs = krealloc(vcpu->arch.wired_tlb, wired * in kvm_vz_vcpu_save_wired()
2471 sizeof(*vcpu->arch.wired_tlb), GFP_ATOMIC); in kvm_vz_vcpu_save_wired()
2474 wired = vcpu->arch.wired_tlb_limit; in kvm_vz_vcpu_save_wired()
2476 vcpu->arch.wired_tlb = tlbs; in kvm_vz_vcpu_save_wired()
2477 vcpu->arch.wired_tlb_limit = wired; in kvm_vz_vcpu_save_wired()
2483 kvm_vz_save_guesttlb(vcpu->arch.wired_tlb, 0, wired); in kvm_vz_vcpu_save_wired()
2485 for (i = wired; i < vcpu->arch.wired_tlb_used; ++i) { in kvm_vz_vcpu_save_wired()
2486 vcpu->arch.wired_tlb[i].tlb_hi = UNIQUE_GUEST_ENTRYHI(i); in kvm_vz_vcpu_save_wired()
2487 vcpu->arch.wired_tlb[i].tlb_lo[0] = 0; in kvm_vz_vcpu_save_wired()
2488 vcpu->arch.wired_tlb[i].tlb_lo[1] = 0; in kvm_vz_vcpu_save_wired()
2489 vcpu->arch.wired_tlb[i].tlb_mask = 0; in kvm_vz_vcpu_save_wired()
2491 vcpu->arch.wired_tlb_used = wired; in kvm_vz_vcpu_save_wired()
2497 if (vcpu->arch.wired_tlb) in kvm_vz_vcpu_load_wired()
2498 kvm_vz_load_guesttlb(vcpu->arch.wired_tlb, 0, in kvm_vz_vcpu_load_wired()
2499 vcpu->arch.wired_tlb_used); in kvm_vz_vcpu_load_wired()
2505 struct mm_struct *gpa_mm = &kvm->arch.gpa_mm; in kvm_vz_vcpu_load_tlb()
2512 migrated = (vcpu->arch.last_exec_cpu != cpu); in kvm_vz_vcpu_load_tlb()
2513 vcpu->arch.last_exec_cpu = cpu; in kvm_vz_vcpu_load_tlb()
2530 (vcpu->arch.vzguestid[cpu] ^ guestid_cache(cpu)) & in kvm_vz_vcpu_load_tlb()
2533 vcpu->arch.vzguestid[cpu] = guestid_cache(cpu); in kvm_vz_vcpu_load_tlb()
2535 vcpu->arch.vzguestid[cpu]); in kvm_vz_vcpu_load_tlb()
2539 change_c0_guestctl1(GUESTID_MASK, vcpu->arch.vzguestid[cpu]); in kvm_vz_vcpu_load_tlb()
2556 if (cpumask_test_and_clear_cpu(cpu, &kvm->arch.asid_flush_mask)) in kvm_vz_vcpu_load_tlb()
2565 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_vcpu_load()
2572 migrated = (vcpu->arch.last_sched_cpu != cpu); in kvm_vz_vcpu_load()
2707 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_vcpu_put()
3055 vcpu->arch.vzguestid[i] = 0; in kvm_vz_vcpu_init()
3079 struct mips_coproc *cop0 = &vcpu->arch.cop0; in kvm_vz_vcpu_setup()
3213 vcpu->arch.pc = CKSEG1ADDR(0x1fc00000); in kvm_vz_vcpu_setup()
3230 cpumask_setall(&kvm->arch.asid_flush_mask); in kvm_vz_prepare_flush_shadow()
3263 r = vcpu->arch.vcpu_run(vcpu); in kvm_vz_vcpu_run()