Home
last modified time | relevance | path

Searched refs:vcpu (Results 1 – 25 of 347) sorted by relevance

12345678910>>...14

/linux/arch/arm64/kvm/
H A Dinject_fault.c18 static unsigned int exception_target_el(struct kvm_vcpu *vcpu) in exception_target_el() argument
21 if (likely(!vcpu_has_nv(vcpu))) in exception_target_el()
30 switch(*vcpu_cpsr(vcpu) & PSR_MODE_MASK) { in exception_target_el()
38 return vcpu_el2_tge_is_set(vcpu) ? PSR_MODE_EL2h : PSR_MODE_EL1h; in exception_target_el()
44 static enum vcpu_sysreg exception_esr_elx(struct kvm_vcpu *vcpu) in exception_esr_elx() argument
46 if (exception_target_el(vcpu) == PSR_MODE_EL2h) in exception_esr_elx()
52 static enum vcpu_sysreg exception_far_elx(struct kvm_vcpu *vcpu) in exception_far_elx() argument
54 if (exception_target_el(vcpu) == PSR_MODE_EL2h) in exception_far_elx()
60 static void pend_sync_exception(struct kvm_vcpu *vcpu) in pend_sync_exception() argument
62 if (exception_target_el(vcpu) == PSR_MODE_EL1h) in pend_sync_exception()
[all …]
/linux/arch/powerpc/kvm/
H A Dbook3s_emulate.c70 static bool spr_allowed(struct kvm_vcpu *vcpu, enum priv_level level) in spr_allowed() argument
73 if (vcpu->arch.papr_enabled && (level > PRIV_SUPER)) in spr_allowed()
77 if ((kvmppc_get_msr(vcpu) & MSR_PR) && level > PRIV_PROBLEM) in spr_allowed()
84 static inline void kvmppc_copyto_vcpu_tm(struct kvm_vcpu *vcpu) in kvmppc_copyto_vcpu_tm() argument
86 memcpy(&vcpu->arch.gpr_tm[0], &vcpu->arch.regs.gpr[0], in kvmppc_copyto_vcpu_tm()
87 sizeof(vcpu->arch.gpr_tm)); in kvmppc_copyto_vcpu_tm()
88 memcpy(&vcpu->arch.fp_tm, &vcpu->arch.fp, in kvmppc_copyto_vcpu_tm()
90 memcpy(&vcpu->arch.vr_tm, &vcpu->arch.vr, in kvmppc_copyto_vcpu_tm()
92 vcpu->arch.ppr_tm = vcpu->arch.ppr; in kvmppc_copyto_vcpu_tm()
93 vcpu->arch.dscr_tm = vcpu->arch.dscr; in kvmppc_copyto_vcpu_tm()
[all …]
H A Dbooke_emulate.c24 static void kvmppc_emul_rfi(struct kvm_vcpu *vcpu) in kvmppc_emul_rfi() argument
26 vcpu->arch.regs.nip = vcpu->arch.shared->srr0; in kvmppc_emul_rfi()
27 kvmppc_set_msr(vcpu, vcpu->arch.shared->srr1); in kvmppc_emul_rfi()
30 static void kvmppc_emul_rfdi(struct kvm_vcpu *vcpu) in kvmppc_emul_rfdi() argument
32 vcpu->arch.regs.nip = vcpu->arch.dsrr0; in kvmppc_emul_rfdi()
33 kvmppc_set_msr(vcpu, vcpu->arch.dsrr1); in kvmppc_emul_rfdi()
36 static void kvmppc_emul_rfci(struct kvm_vcpu *vcpu) in kvmppc_emul_rfci() argument
38 vcpu->arch.regs.nip = vcpu->arch.csrr0; in kvmppc_emul_rfci()
39 kvmppc_set_msr(vcpu, vcpu->arch.csrr1); in kvmppc_emul_rfci()
42 int kvmppc_booke_emulate_op(struct kvm_vcpu *vcpu, in kvmppc_booke_emulate_op() argument
[all …]
H A Demulate_loadstore.c28 static bool kvmppc_check_fp_disabled(struct kvm_vcpu *vcpu) in kvmppc_check_fp_disabled() argument
30 if (!(kvmppc_get_msr(vcpu) & MSR_FP)) { in kvmppc_check_fp_disabled()
31 kvmppc_core_queue_fpunavail(vcpu, kvmppc_get_msr(vcpu) & SRR1_PREFIXED); in kvmppc_check_fp_disabled()
40 static bool kvmppc_check_vsx_disabled(struct kvm_vcpu *vcpu) in kvmppc_check_vsx_disabled() argument
42 if (!(kvmppc_get_msr(vcpu) & MSR_VSX)) { in kvmppc_check_vsx_disabled()
43 kvmppc_core_queue_vsx_unavail(vcpu, kvmppc_get_msr(vcpu) & SRR1_PREFIXED); in kvmppc_check_vsx_disabled()
52 static bool kvmppc_check_altivec_disabled(struct kvm_vcpu *vcpu) in kvmppc_check_altivec_disabled() argument
54 if (!(kvmppc_get_msr(vcpu) & MSR_VEC)) { in kvmppc_check_altivec_disabled()
55 kvmppc_core_queue_vec_unavail(vcpu, kvmppc_get_msr(vcpu) & SRR1_PREFIXED); in kvmppc_check_altivec_disabled()
72 int kvmppc_emulate_loadstore(struct kvm_vcpu *vcpu) in kvmppc_emulate_loadstore() argument
[all …]
H A Dbook3s_hv_tm.c16 static void emulate_tx_failure(struct kvm_vcpu *vcpu, u64 failure_cause) in emulate_tx_failure() argument
19 u64 msr = vcpu->arch.shregs.msr; in emulate_tx_failure()
21 tfiar = vcpu->arch.regs.nip & ~0x3ull; in emulate_tx_failure()
23 if (MSR_TM_SUSPENDED(vcpu->arch.shregs.msr)) in emulate_tx_failure()
29 vcpu->arch.tfiar = tfiar; in emulate_tx_failure()
31 vcpu->arch.texasr = (vcpu->arch.texasr & 0x3ffffff) | texasr; in emulate_tx_failure()
42 int kvmhv_p9_tm_emulation(struct kvm_vcpu *vcpu) in kvmhv_p9_tm_emulation() argument
44 u32 instr = vcpu->arch.emul_inst; in kvmhv_p9_tm_emulation()
45 u64 msr = vcpu->arch.shregs.msr; in kvmhv_p9_tm_emulation()
56 vcpu->arch.regs.nip -= 4; in kvmhv_p9_tm_emulation()
[all …]
H A Dbook3s.c98 static inline void kvmppc_update_int_pending(struct kvm_vcpu *vcpu, in kvmppc_update_int_pending() argument
101 if (is_kvmppc_hv_enabled(vcpu->kvm)) in kvmppc_update_int_pending()
104 kvmppc_set_int_pending(vcpu, 1); in kvmppc_update_int_pending()
106 kvmppc_set_int_pending(vcpu, 0); in kvmppc_update_int_pending()
109 static inline bool kvmppc_critical_section(struct kvm_vcpu *vcpu) in kvmppc_critical_section() argument
115 if (is_kvmppc_hv_enabled(vcpu->kvm)) in kvmppc_critical_section()
118 crit_raw = kvmppc_get_critical(vcpu); in kvmppc_critical_section()
119 crit_r1 = kvmppc_get_gpr(vcpu, 1); in kvmppc_critical_section()
122 if (!(kvmppc_get_msr(vcpu) & MSR_SF)) { in kvmppc_critical_section()
130 crit = crit && !(kvmppc_get_msr(vcpu) & MSR_PR); in kvmppc_critical_section()
[all …]
H A Dbook3s_paired_singles.c150 static inline void kvmppc_sync_qpr(struct kvm_vcpu *vcpu, int rt) in kvmppc_sync_qpr() argument
152 kvm_cvt_df(&VCPU_FPR(vcpu, rt), &vcpu->arch.qpr[rt]); in kvmppc_sync_qpr()
155 static void kvmppc_inject_pf(struct kvm_vcpu *vcpu, ulong eaddr, bool is_store) in kvmppc_inject_pf() argument
158 u64 msr = kvmppc_get_msr(vcpu); in kvmppc_inject_pf()
162 kvmppc_set_msr(vcpu, msr); in kvmppc_inject_pf()
163 kvmppc_set_dar(vcpu, eaddr); in kvmppc_inject_pf()
168 kvmppc_set_dsisr(vcpu, dsisr); in kvmppc_inject_pf()
169 kvmppc_book3s_queue_irqprio(vcpu, BOOK3S_INTERRUPT_DATA_STORAGE); in kvmppc_inject_pf()
172 static int kvmppc_emulate_fpr_load(struct kvm_vcpu *vcpu, in kvmppc_emulate_fpr_load() argument
184 r = kvmppc_ld(vcpu, &addr, len, tmp, true); in kvmppc_emulate_fpr_load()
[all …]
H A Dbook3s_hv.c134 static int kvmppc_hv_setup_htab_rma(struct kvm_vcpu *vcpu);
166 struct kvm_vcpu *vcpu; in next_runnable_thread() local
169 vcpu = READ_ONCE(vc->runnable_threads[i]); in next_runnable_thread()
170 if (vcpu) { in next_runnable_thread()
172 return vcpu; in next_runnable_thread()
179 #define for_each_runnable_thread(i, vcpu, vc) \ argument
180 for (i = -1; (vcpu = next_runnable_thread(vc, &i)); )
226 static void kvmppc_fast_vcpu_kick_hv(struct kvm_vcpu *vcpu) in kvmppc_fast_vcpu_kick_hv() argument
234 * is the barrier in vcpu run that orders setting the cpu fields vs in kvmppc_fast_vcpu_kick_hv()
238 waitp = kvm_arch_vcpu_get_wait(vcpu); in kvmppc_fast_vcpu_kick_hv()
317 kvmppc_core_vcpu_load_hv(struct kvm_vcpu * vcpu,int cpu) kvmppc_core_vcpu_load_hv() argument
352 kvmppc_core_vcpu_put_hv(struct kvm_vcpu * vcpu) kvmppc_core_vcpu_put_hv() argument
385 kvmppc_set_pvr_hv(struct kvm_vcpu * vcpu,u32 pvr) kvmppc_set_pvr_hv() argument
414 kvmppc_set_arch_compat(struct kvm_vcpu * vcpu,u32 arch_compat) kvmppc_set_arch_compat() argument
503 kvmppc_dump_regs(struct kvm_vcpu * vcpu) kvmppc_dump_regs() argument
541 init_vpa(struct kvm_vcpu * vcpu,struct lppaca * vpa) init_vpa() argument
547 set_vpa(struct kvm_vcpu * vcpu,struct kvmppc_vpa * v,unsigned long addr,unsigned long len) set_vpa() argument
579 do_h_register_vpa(struct kvm_vcpu * vcpu,unsigned long flags,unsigned long vcpuid,unsigned long vpa) do_h_register_vpa() argument
696 kvmppc_update_vpa(struct kvm_vcpu * vcpu,struct kvmppc_vpa * vpap,struct kvmppc_vpa * old_vpap) kvmppc_update_vpa() argument
746 kvmppc_update_vpas(struct kvm_vcpu * vcpu) kvmppc_update_vpas() argument
809 __kvmppc_create_dtl_entry(struct kvm_vcpu * vcpu,struct lppaca * vpa,unsigned int pcpu,u64 now,unsigned long stolen) __kvmppc_create_dtl_entry() argument
843 kvmppc_update_vpa_dispatch(struct kvm_vcpu * vcpu,struct kvmppc_vcore * vc) kvmppc_update_vpa_dispatch() argument
873 kvmppc_update_vpa_dispatch_p9(struct kvm_vcpu * vcpu,struct kvmppc_vcore * vc,u64 now) kvmppc_update_vpa_dispatch_p9() argument
897 kvmppc_doorbell_pending(struct kvm_vcpu * vcpu) kvmppc_doorbell_pending() argument
917 kvmppc_power8_compatible(struct kvm_vcpu * vcpu) kvmppc_power8_compatible() argument
927 kvmppc_h_set_mode(struct kvm_vcpu * vcpu,unsigned long mflags,unsigned long resource,unsigned long value1,unsigned long value2) kvmppc_h_set_mode() argument
1028 kvmppc_h_page_init(struct kvm_vcpu * vcpu,unsigned long flags,unsigned long dest,unsigned long src) kvmppc_h_page_init() argument
1087 kvmppc_get_yield_count(struct kvm_vcpu * vcpu) kvmppc_get_yield_count() argument
1105 kvmppc_nested_h_rpt_invalidate(struct kvm_vcpu * vcpu) kvmppc_nested_h_rpt_invalidate() argument
1128 kvmppc_h_rpt_invalidate(struct kvm_vcpu * vcpu,unsigned long id,unsigned long target,unsigned long type,unsigned long pg_sizes,unsigned long start,unsigned long end) kvmppc_h_rpt_invalidate() argument
1162 kvmppc_pseries_do_hcall(struct kvm_vcpu * vcpu) kvmppc_pseries_do_hcall() argument
1446 kvmppc_cede(struct kvm_vcpu * vcpu) kvmppc_cede() argument
1491 kvmppc_emulate_debug_inst(struct kvm_vcpu * vcpu) kvmppc_emulate_debug_inst() argument
1519 kvmppc_read_dpdes(struct kvm_vcpu * vcpu) kvmppc_read_dpdes() argument
1552 kvmppc_emulate_doorbell_instr(struct kvm_vcpu * vcpu) kvmppc_emulate_doorbell_instr() argument
1617 kvmppc_pmu_unavailable(struct kvm_vcpu * vcpu) kvmppc_pmu_unavailable() argument
1627 kvmppc_ebb_unavailable(struct kvm_vcpu * vcpu) kvmppc_ebb_unavailable() argument
1637 kvmppc_tm_unavailable(struct kvm_vcpu * vcpu) kvmppc_tm_unavailable() argument
1647 kvmppc_handle_exit_hv(struct kvm_vcpu * vcpu,struct task_struct * tsk) kvmppc_handle_exit_hv() argument
1986 kvmppc_handle_nested_exit(struct kvm_vcpu * vcpu) kvmppc_handle_nested_exit() argument
2118 kvm_arch_vcpu_ioctl_get_sregs_hv(struct kvm_vcpu * vcpu,struct kvm_sregs * sregs) kvm_arch_vcpu_ioctl_get_sregs_hv() argument
2133 kvm_arch_vcpu_ioctl_set_sregs_hv(struct kvm_vcpu * vcpu,struct kvm_sregs * sregs) kvm_arch_vcpu_ioctl_set_sregs_hv() argument
2198 kvmppc_set_lpcr(struct kvm_vcpu * vcpu,u64 new_lpcr,bool preserve_top32) kvmppc_set_lpcr() argument
2228 struct kvm_vcpu *vcpu; kvmppc_set_lpcr() local
2247 kvmppc_get_one_reg_hv(struct kvm_vcpu * vcpu,u64 id,union kvmppc_one_reg * val) kvmppc_get_one_reg_hv() argument
2505 kvmppc_set_one_reg_hv(struct kvm_vcpu * vcpu,u64 id,union kvmppc_one_reg * val) kvmppc_set_one_reg_hv() argument
2852 struct kvm_vcpu *vcpu; global() member
2859 struct kvm_vcpu *vcpu = inode->i_private; debugfs_timings_open() local
2886 struct kvm_vcpu *vcpu = p->vcpu; debugfs_timings_read() local
2963 kvmppc_arch_create_vcpu_debugfs_hv(struct kvm_vcpu * vcpu,struct dentry * debugfs_dentry) kvmppc_arch_create_vcpu_debugfs_hv() argument
2972 kvmppc_arch_create_vcpu_debugfs_hv(struct kvm_vcpu * vcpu,struct dentry * debugfs_dentry) kvmppc_arch_create_vcpu_debugfs_hv() argument
2978 kvmppc_core_vcpu_create_hv(struct kvm_vcpu * vcpu) kvmppc_core_vcpu_create_hv() argument
3157 kvmppc_core_vcpu_free_hv(struct kvm_vcpu * vcpu) kvmppc_core_vcpu_free_hv() argument
3168 kvmppc_core_check_requests_hv(struct kvm_vcpu * vcpu) kvmppc_core_check_requests_hv() argument
3174 kvmppc_set_timer(struct kvm_vcpu * vcpu) kvmppc_set_timer() argument
3193 kvmppc_remove_runnable(struct kvmppc_vcore * vc,struct kvm_vcpu * vcpu,u64 tb) kvmppc_remove_runnable() argument
3257 radix_flush_cpu(struct kvm * kvm,int cpu,struct kvm_vcpu * vcpu) radix_flush_cpu() argument
3293 struct kvm_vcpu *vcpu = arg; do_migrate_away_vcpu() local
3310 kvmppc_prepare_radix_vcpu(struct kvm_vcpu * vcpu,int pcpu) kvmppc_prepare_radix_vcpu() argument
3351 kvmppc_start_thread(struct kvm_vcpu * vcpu,struct kvmppc_vcore * vc) kvmppc_start_thread() argument
3601 struct kvm_vcpu *vcpu; prepare_threads() local
3651 struct kvm_vcpu *vcpu; recheck_signals_and_mmu() local
3670 struct kvm_vcpu *vcpu; post_guest_process() local
3796 struct kvm_vcpu *vcpu; kvmppc_run_core() local
4119 vcpu_vpa_increment_dispatch(struct kvm_vcpu * vcpu) vcpu_vpa_increment_dispatch() argument
4171 do_trace_nested_cs_time(struct kvm_vcpu * vcpu) do_trace_nested_cs_time() argument
4213 struct kvm_vcpu *vcpu; kvmhv_get_l1_to_l2_cs_time_vcpu() local
4228 struct kvm_vcpu *vcpu; kvmhv_get_l2_to_l1_cs_time_vcpu() local
4243 struct kvm_vcpu *vcpu; kvmhv_get_l2_runtime_agg_vcpu() local
4262 do_trace_nested_cs_time(struct kvm_vcpu * vcpu) do_trace_nested_cs_time() argument
4267 kvmhv_vcpu_entry_nestedv2(struct kvm_vcpu * vcpu,u64 time_limit,unsigned long lpcr,u64 * tb) kvmhv_vcpu_entry_nestedv2() argument
4328 kvmhv_vcpu_entry_p9_nested(struct kvm_vcpu * vcpu,u64 time_limit,unsigned long lpcr,u64 * tb) kvmhv_vcpu_entry_p9_nested() argument
4432 kvmhv_p9_guest_entry(struct kvm_vcpu * vcpu,u64 time_limit,unsigned long lpcr,u64 * tb) kvmhv_p9_guest_entry() argument
4540 kvmppc_wait_for_exec(struct kvmppc_vcore * vc,struct kvm_vcpu * vcpu,int wait_state) kvmppc_wait_for_exec() argument
4572 xive_interrupt_pending(struct kvm_vcpu * vcpu) xive_interrupt_pending() argument
4580 xive_interrupt_pending(struct kvm_vcpu * vcpu) xive_interrupt_pending() argument
4586 kvmppc_vcpu_woken(struct kvm_vcpu * vcpu) kvmppc_vcpu_woken() argument
4595 kvmppc_vcpu_check_block(struct kvm_vcpu * vcpu) kvmppc_vcpu_check_block() argument
4608 struct kvm_vcpu *vcpu; kvmppc_vcore_check_block() local
4737 kvmhv_setup_mmu(struct kvm_vcpu * vcpu) kvmhv_setup_mmu() argument
4756 kvmppc_run_vcpu(struct kvm_vcpu * vcpu) kvmppc_run_vcpu() argument
4892 kvmhv_run_single_vcpu(struct kvm_vcpu * vcpu,u64 time_limit,unsigned long lpcr) kvmhv_run_single_vcpu() argument
5113 kvmppc_vcpu_run_hv(struct kvm_vcpu * vcpu) kvmppc_vcpu_run_hv() argument
5298 struct kvm_vcpu *vcpu; kvm_vm_ioctl_get_dirty_log_hv() local
5465 struct kvm_vcpu *vcpu; kvmppc_update_lpcr() local
5498 kvmppc_hv_setup_htab_rma(struct kvm_vcpu * vcpu) kvmppc_hv_setup_htab_rma() argument
5951 kvmppc_core_emulate_op_hv(struct kvm_vcpu * vcpu,unsigned int inst,int * advance) kvmppc_core_emulate_op_hv() argument
5957 kvmppc_core_emulate_mtspr_hv(struct kvm_vcpu * vcpu,int sprn,ulong spr_val) kvmppc_core_emulate_mtspr_hv() argument
5963 kvmppc_core_emulate_mfspr_hv(struct kvm_vcpu * vcpu,int sprn,ulong * spr_val) kvmppc_core_emulate_mfspr_hv() argument
6366 kvmhv_load_from_eaddr(struct kvm_vcpu * vcpu,ulong * eaddr,void * ptr,int size) kvmhv_load_from_eaddr() argument
6385 kvmhv_store_to_eaddr(struct kvm_vcpu * vcpu,ulong * eaddr,void * ptr,int size) kvmhv_store_to_eaddr() argument
6438 struct kvm_vcpu *vcpu; kvmhv_svm_off() local
[all...]
H A Dbook3s_pr_papr.c23 static unsigned long get_pteg_addr(struct kvm_vcpu *vcpu, long pte_index) in get_pteg_addr() argument
25 struct kvmppc_vcpu_book3s *vcpu_book3s = to_book3s(vcpu); in get_pteg_addr()
36 static int kvmppc_h_pr_enter(struct kvm_vcpu *vcpu) in kvmppc_h_pr_enter() argument
38 long flags = kvmppc_get_gpr(vcpu, 4); in kvmppc_h_pr_enter()
39 long pte_index = kvmppc_get_gpr(vcpu, 5); in kvmppc_h_pr_enter()
47 pteg_addr = get_pteg_addr(vcpu, pte_index); in kvmppc_h_pr_enter()
49 mutex_lock(&vcpu->kvm->arch.hpt_mutex); in kvmppc_h_pr_enter()
70 hpte[0] = cpu_to_be64(kvmppc_get_gpr(vcpu, 6)); in kvmppc_h_pr_enter()
71 hpte[1] = cpu_to_be64(kvmppc_get_gpr(vcpu, 7)); in kvmppc_h_pr_enter()
76 kvmppc_set_gpr(vcpu, 4, pte_index | i); in kvmppc_h_pr_enter()
[all …]
H A Dbook3s_hv_p9_entry.c10 static void load_spr_state(struct kvm_vcpu *vcpu, in load_spr_state() argument
14 mtspr(SPRN_TAR, vcpu->arch.tar); in load_spr_state()
18 current->thread.vrsave != vcpu->arch.vrsave) in load_spr_state()
19 mtspr(SPRN_VRSAVE, vcpu->arch.vrsave); in load_spr_state()
22 if (vcpu->arch.hfscr & HFSCR_EBB) { in load_spr_state()
23 if (current->thread.ebbhr != vcpu->arch.ebbhr) in load_spr_state()
24 mtspr(SPRN_EBBHR, vcpu->arch.ebbhr); in load_spr_state()
25 if (current->thread.ebbrr != vcpu->arch.ebbrr) in load_spr_state()
26 mtspr(SPRN_EBBRR, vcpu->arch.ebbrr); in load_spr_state()
27 if (current->thread.bescr != vcpu->arch.bescr) in load_spr_state()
[all …]
H A Demulate.c26 void kvmppc_emulate_dec(struct kvm_vcpu *vcpu) in kvmppc_emulate_dec() argument
31 pr_debug("mtDEC: %lx\n", vcpu->arch.dec); in kvmppc_emulate_dec()
32 hrtimer_try_to_cancel(&vcpu->arch.dec_timer); in kvmppc_emulate_dec()
36 kvmppc_core_dequeue_dec(vcpu); in kvmppc_emulate_dec()
41 if (vcpu->arch.dec == 0) in kvmppc_emulate_dec()
51 dec_time = vcpu->arch.dec; in kvmppc_emulate_dec()
58 hrtimer_start(&vcpu->arch.dec_timer, in kvmppc_emulate_dec()
60 vcpu->arch.dec_jiffies = get_tb(); in kvmppc_emulate_dec()
63 u32 kvmppc_get_dec(struct kvm_vcpu *vcpu, u64 tb) in kvmppc_get_dec() argument
65 u64 jd = tb - vcpu->arch.dec_jiffies; in kvmppc_get_dec()
[all …]
H A De500_emulate.c51 static int kvmppc_e500_emul_msgclr(struct kvm_vcpu *vcpu, int rb) in kvmppc_e500_emul_msgclr() argument
53 ulong param = vcpu->arch.regs.gpr[rb]; in kvmppc_e500_emul_msgclr()
59 clear_bit(prio, &vcpu->arch.pending_exceptions); in kvmppc_e500_emul_msgclr()
63 static int kvmppc_e500_emul_msgsnd(struct kvm_vcpu *vcpu, int rb) in kvmppc_e500_emul_msgsnd() argument
65 ulong param = vcpu->arch.regs.gpr[rb]; in kvmppc_e500_emul_msgsnd()
74 kvm_for_each_vcpu(i, cvcpu, vcpu->kvm) { in kvmppc_e500_emul_msgsnd()
86 static int kvmppc_e500_emul_ehpriv(struct kvm_vcpu *vcpu, in kvmppc_e500_emul_ehpriv() argument
93 vcpu->run->exit_reason = KVM_EXIT_DEBUG; in kvmppc_e500_emul_ehpriv()
94 vcpu->run->debug.arch.address = vcpu->arch.regs.nip; in kvmppc_e500_emul_ehpriv()
95 vcpu->run->debug.arch.status = 0; in kvmppc_e500_emul_ehpriv()
[all …]
H A De500mc.c28 void kvmppc_set_pending_interrupt(struct kvm_vcpu *vcpu, enum int_class type) in kvmppc_set_pending_interrupt() argument
49 tag = PPC_DBELL_LPID(get_lpid(vcpu)) | vcpu->vcpu_id; in kvmppc_set_pending_interrupt()
74 mtspr(SPRN_MAS5, MAS5_SGS | get_lpid(&vcpu_e500->vcpu)); in kvmppc_e500_tlbil_one()
95 mtspr(SPRN_MAS5, MAS5_SGS | get_lpid(&vcpu_e500->vcpu)); in kvmppc_e500_tlbil_all()
105 void kvmppc_set_pid(struct kvm_vcpu *vcpu, u32 pid) in kvmppc_set_pid() argument
107 vcpu->arch.pid = pid; in kvmppc_set_pid()
110 void kvmppc_mmu_msr_notify(struct kvm_vcpu *vcpu, u32 old_msr) in kvmppc_mmu_msr_notify() argument
117 static void kvmppc_core_vcpu_load_e500mc(struct kvm_vcpu *vcpu, int cpu) in kvmppc_core_vcpu_load_e500mc() argument
119 struct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu); in kvmppc_core_vcpu_load_e500mc()
121 kvmppc_booke_vcpu_load(vcpu, cpu); in kvmppc_core_vcpu_load_e500mc()
[all …]
H A Dtiming.c22 void kvmppc_init_timing_stats(struct kvm_vcpu *vcpu) in kvmppc_init_timing_stats() argument
27 mutex_lock(&vcpu->arch.exit_timing_lock); in kvmppc_init_timing_stats()
29 vcpu->arch.last_exit_type = 0xDEAD; in kvmppc_init_timing_stats()
31 vcpu->arch.timing_count_type[i] = 0; in kvmppc_init_timing_stats()
32 vcpu->arch.timing_max_duration[i] = 0; in kvmppc_init_timing_stats()
33 vcpu->arch.timing_min_duration[i] = 0xFFFFFFFF; in kvmppc_init_timing_stats()
34 vcpu->arch.timing_sum_duration[i] = 0; in kvmppc_init_timing_stats()
35 vcpu->arch.timing_sum_quad_duration[i] = 0; in kvmppc_init_timing_stats()
37 vcpu->arch.timing_last_exit = 0; in kvmppc_init_timing_stats()
38 vcpu->arch.timing_exit.tv64 = 0; in kvmppc_init_timing_stats()
[all …]
/linux/arch/mips/kvm/
H A Demulate.c40 static int kvm_compute_return_epc(struct kvm_vcpu *vcpu, unsigned long instpc, in kvm_compute_return_epc() argument
45 struct kvm_vcpu_arch *arch = &vcpu->arch; in kvm_compute_return_epc()
56 err = kvm_get_badinstrp((u32 *)epc, vcpu, &insn.word); in kvm_compute_return_epc()
243 enum emulation_result update_pc(struct kvm_vcpu *vcpu, u32 cause) in update_pc() argument
248 err = kvm_compute_return_epc(vcpu, vcpu->arch.pc, in update_pc()
249 &vcpu->arch.pc); in update_pc()
253 vcpu->arch.pc += 4; in update_pc()
256 kvm_debug("update_pc(): New PC: %#lx\n", vcpu->arch.pc); in update_pc()
272 int kvm_get_badinstr(u32 *opc, struct kvm_vcpu *vcpu, u32 *out) in kvm_get_badinstr() argument
275 *out = vcpu->arch.host_cp0_badinstr; in kvm_get_badinstr()
[all …]
H A Dmips.c113 int kvm_arch_vcpu_runnable(struct kvm_vcpu *vcpu) in kvm_arch_vcpu_runnable() argument
115 return !!(vcpu->arch.pending_exceptions); in kvm_arch_vcpu_runnable()
118 bool kvm_arch_vcpu_in_kernel(struct kvm_vcpu *vcpu) in kvm_arch_vcpu_in_kernel() argument
123 int kvm_arch_vcpu_should_kick(struct kvm_vcpu *vcpu) in kvm_arch_vcpu_should_kick() argument
261 struct kvm_vcpu *vcpu; in kvm_mips_comparecount_wakeup() local
263 vcpu = container_of(timer, struct kvm_vcpu, arch.comparecount_timer); in kvm_mips_comparecount_wakeup()
265 kvm_mips_callbacks->queue_timer_int(vcpu); in kvm_mips_comparecount_wakeup()
267 vcpu->arch.wait = 0; in kvm_mips_comparecount_wakeup()
268 rcuwait_wake_up(&vcpu->wait); in kvm_mips_comparecount_wakeup()
270 return kvm_mips_count_timeout(vcpu); in kvm_mips_comparecount_wakeup()
[all …]
/linux/arch/loongarch/kvm/
H A Dvcpu.c41 static inline void kvm_save_host_pmu(struct kvm_vcpu *vcpu) in kvm_save_host_pmu() argument
45 context = this_cpu_ptr(vcpu->kvm->arch.vmcs); in kvm_save_host_pmu()
56 static inline void kvm_restore_host_pmu(struct kvm_vcpu *vcpu) in kvm_restore_host_pmu() argument
60 context = this_cpu_ptr(vcpu->kvm->arch.vmcs); in kvm_restore_host_pmu()
72 static inline void kvm_save_guest_pmu(struct kvm_vcpu *vcpu) in kvm_save_guest_pmu() argument
74 struct loongarch_csrs *csr = vcpu->arch.csr; in kvm_save_guest_pmu()
86 static inline void kvm_restore_guest_pmu(struct kvm_vcpu *vcpu) in kvm_restore_guest_pmu() argument
88 struct loongarch_csrs *csr = vcpu->arch.csr; in kvm_restore_guest_pmu()
100 static int kvm_own_pmu(struct kvm_vcpu *vcpu) in kvm_own_pmu() argument
104 if (!kvm_guest_has_pmu(&vcpu->arch)) in kvm_own_pmu()
[all …]
/linux/arch/x86/kvm/svm/
H A Dsvm.c123 /* Default doubles per-vcpu window every exit. */
127 /* Default resets per-vcpu window every exit to pause_filter_count. */
210 int svm_set_efer(struct kvm_vcpu *vcpu, u64 efer) in svm_set_efer() argument
212 struct vcpu_svm *svm = to_svm(vcpu); in svm_set_efer()
213 u64 old_efer = vcpu->arch.efer; in svm_set_efer()
214 vcpu->arch.efer = efer; in svm_set_efer()
236 if (is_guest_mode(vcpu) && vcpu->wants_to_run) in svm_set_efer()
237 kvm_make_request(KVM_REQ_TRIPLE_FAULT, vcpu); in svm_set_efer()
239 svm_leave_nested(vcpu); in svm_set_efer()
277 svm_get_interrupt_shadow(struct kvm_vcpu * vcpu) svm_get_interrupt_shadow() argument
287 svm_set_interrupt_shadow(struct kvm_vcpu * vcpu,int mask) svm_set_interrupt_shadow() argument
298 __svm_skip_emulated_instruction(struct kvm_vcpu * vcpu,int emul_type,bool commit_side_effects) __svm_skip_emulated_instruction() argument
337 svm_skip_emulated_instruction(struct kvm_vcpu * vcpu) svm_skip_emulated_instruction() argument
342 svm_update_soft_interrupt_rip(struct kvm_vcpu * vcpu,u8 vector) svm_update_soft_interrupt_rip() argument
389 svm_inject_exception(struct kvm_vcpu * vcpu) svm_inject_exception() argument
425 svm_init_osvw(struct kvm_vcpu * vcpu) svm_init_osvw() argument
690 svm_set_intercept_for_msr(struct kvm_vcpu * vcpu,u32 msr,int type,bool set) svm_set_intercept_for_msr() argument
733 svm_recalc_lbr_msr_intercepts(struct kvm_vcpu * vcpu) svm_recalc_lbr_msr_intercepts() argument
757 svm_recalc_pmu_msr_intercepts(struct kvm_vcpu * vcpu) svm_recalc_pmu_msr_intercepts() argument
791 svm_recalc_msr_intercepts(struct kvm_vcpu * vcpu) svm_recalc_msr_intercepts() argument
867 __svm_enable_lbrv(struct kvm_vcpu * vcpu) __svm_enable_lbrv() argument
872 svm_enable_lbrv(struct kvm_vcpu * vcpu) svm_enable_lbrv() argument
878 __svm_disable_lbrv(struct kvm_vcpu * vcpu) __svm_disable_lbrv() argument
884 svm_update_lbrv(struct kvm_vcpu * vcpu) svm_update_lbrv() argument
919 grow_ple_window(struct kvm_vcpu * vcpu) grow_ple_window() argument
948 shrink_ple_window(struct kvm_vcpu * vcpu) shrink_ple_window() argument
1004 svm_get_l2_tsc_offset(struct kvm_vcpu * vcpu) svm_get_l2_tsc_offset() argument
1011 svm_get_l2_tsc_multiplier(struct kvm_vcpu * vcpu) svm_get_l2_tsc_multiplier() argument
1018 svm_write_tsc_offset(struct kvm_vcpu * vcpu) svm_write_tsc_offset() argument
1027 svm_write_tsc_multiplier(struct kvm_vcpu * vcpu) svm_write_tsc_multiplier() argument
1044 svm_recalc_instruction_intercepts(struct kvm_vcpu * vcpu) svm_recalc_instruction_intercepts() argument
1120 svm_recalc_intercepts(struct kvm_vcpu * vcpu) svm_recalc_intercepts() argument
1126 init_vmcb(struct kvm_vcpu * vcpu,bool init_event) init_vmcb() argument
1282 __svm_vcpu_reset(struct kvm_vcpu * vcpu) __svm_vcpu_reset() argument
1296 svm_vcpu_reset(struct kvm_vcpu * vcpu,bool init_event) svm_vcpu_reset() argument
1315 svm_vcpu_create(struct kvm_vcpu * vcpu) svm_vcpu_create() argument
1362 svm_vcpu_free(struct kvm_vcpu * vcpu) svm_vcpu_free() argument
1434 svm_prepare_switch_to_guest(struct kvm_vcpu * vcpu) svm_prepare_switch_to_guest() argument
1474 svm_prepare_host_switch(struct kvm_vcpu * vcpu) svm_prepare_host_switch() argument
1479 svm_vcpu_load(struct kvm_vcpu * vcpu,int cpu) svm_vcpu_load() argument
1488 svm_vcpu_put(struct kvm_vcpu * vcpu) svm_vcpu_put() argument
1498 svm_get_rflags(struct kvm_vcpu * vcpu) svm_get_rflags() argument
1513 svm_set_rflags(struct kvm_vcpu * vcpu,unsigned long rflags) svm_set_rflags() argument
1526 svm_get_if_flag(struct kvm_vcpu * vcpu) svm_get_if_flag() argument
1535 svm_cache_reg(struct kvm_vcpu * vcpu,enum kvm_reg reg) svm_cache_reg() argument
1607 svm_seg(struct kvm_vcpu * vcpu,int seg) svm_seg() argument
1626 svm_get_segment_base(struct kvm_vcpu * vcpu,int seg) svm_get_segment_base() argument
1633 svm_get_segment(struct kvm_vcpu * vcpu,struct kvm_segment * var,int seg) svm_get_segment() argument
1702 svm_get_cpl(struct kvm_vcpu * vcpu) svm_get_cpl() argument
1709 svm_get_cs_db_l_bits(struct kvm_vcpu * vcpu,int * db,int * l) svm_get_cs_db_l_bits() argument
1718 svm_get_idt(struct kvm_vcpu * vcpu,struct desc_ptr * dt) svm_get_idt() argument
1726 svm_set_idt(struct kvm_vcpu * vcpu,struct desc_ptr * dt) svm_set_idt() argument
1735 svm_get_gdt(struct kvm_vcpu * vcpu,struct desc_ptr * dt) svm_get_gdt() argument
1743 svm_set_gdt(struct kvm_vcpu * vcpu,struct desc_ptr * dt) svm_set_gdt() argument
1752 sev_post_set_cr3(struct kvm_vcpu * vcpu,unsigned long cr3) sev_post_set_cr3() argument
1770 svm_is_valid_cr0(struct kvm_vcpu * vcpu,unsigned long cr0) svm_is_valid_cr0() argument
1775 svm_set_cr0(struct kvm_vcpu * vcpu,unsigned long cr0) svm_set_cr0() argument
1832 svm_is_valid_cr4(struct kvm_vcpu * vcpu,unsigned long cr4) svm_is_valid_cr4() argument
1837 svm_set_cr4(struct kvm_vcpu * vcpu,unsigned long cr4) svm_set_cr4() argument
1857 svm_set_segment(struct kvm_vcpu * vcpu,struct kvm_segment * var,int seg) svm_set_segment() argument
1888 svm_update_exception_bitmap(struct kvm_vcpu * vcpu) svm_update_exception_bitmap() argument
1913 svm_set_dr6(struct kvm_vcpu * vcpu,unsigned long value) svm_set_dr6() argument
1926 svm_sync_dirty_debug_regs(struct kvm_vcpu * vcpu) svm_sync_dirty_debug_regs() argument
1947 svm_set_dr7(struct kvm_vcpu * vcpu,unsigned long value) svm_set_dr7() argument
1958 pf_interception(struct kvm_vcpu * vcpu) pf_interception() argument
1974 npf_interception(struct kvm_vcpu * vcpu) npf_interception() argument
2036 db_interception(struct kvm_vcpu * vcpu) db_interception() argument
2069 bp_interception(struct kvm_vcpu * vcpu) bp_interception() argument
2080 icebp_interception(struct kvm_vcpu * vcpu) icebp_interception() argument
2096 ud_interception(struct kvm_vcpu * vcpu) ud_interception() argument
2101 ac_interception(struct kvm_vcpu * vcpu) ac_interception() argument
2139 svm_handle_mce(struct kvm_vcpu * vcpu) svm_handle_mce() argument
2160 mc_interception(struct kvm_vcpu * vcpu) mc_interception() argument
2165 shutdown_interception(struct kvm_vcpu * vcpu) shutdown_interception() argument
2195 io_interception(struct kvm_vcpu * vcpu) io_interception() argument
2220 nmi_interception(struct kvm_vcpu * vcpu) nmi_interception() argument
2225 smi_interception(struct kvm_vcpu * vcpu) smi_interception() argument
2230 intr_interception(struct kvm_vcpu * vcpu) intr_interception() argument
2236 vmload_vmsave_interception(struct kvm_vcpu * vcpu,bool vmload) vmload_vmsave_interception() argument
2271 vmload_interception(struct kvm_vcpu * vcpu) vmload_interception() argument
2276 vmsave_interception(struct kvm_vcpu * vcpu) vmsave_interception() argument
2281 vmrun_interception(struct kvm_vcpu * vcpu) vmrun_interception() argument
2290 svm_get_decoded_instr_exit_code(struct kvm_vcpu * vcpu) svm_get_decoded_instr_exit_code() argument
2321 gp_interception(struct kvm_vcpu * vcpu) gp_interception() argument
2401 stgi_interception(struct kvm_vcpu * vcpu) stgi_interception() argument
2413 clgi_interception(struct kvm_vcpu * vcpu) clgi_interception() argument
2425 invlpga_interception(struct kvm_vcpu * vcpu) invlpga_interception() argument
2442 skinit_interception(struct kvm_vcpu * vcpu) skinit_interception() argument
2450 task_switch_interception(struct kvm_vcpu * vcpu) task_switch_interception() argument
2528 iret_interception(struct kvm_vcpu * vcpu) iret_interception() argument
2544 invlpg_interception(struct kvm_vcpu * vcpu) invlpg_interception() argument
2553 emulate_on_interception(struct kvm_vcpu * vcpu) emulate_on_interception() argument
2558 rsm_interception(struct kvm_vcpu * vcpu) rsm_interception() argument
2563 check_selective_cr0_intercepted(struct kvm_vcpu * vcpu,unsigned long val) check_selective_cr0_intercepted() argument
2587 cr_interception(struct kvm_vcpu * vcpu) cr_interception() argument
2661 cr_trap(struct kvm_vcpu * vcpu) cr_trap() argument
2696 dr_interception(struct kvm_vcpu * vcpu) dr_interception() argument
2735 cr8_write_interception(struct kvm_vcpu * vcpu) cr8_write_interception() argument
2752 efer_trap(struct kvm_vcpu * vcpu) efer_trap() argument
2805 sev_es_prevent_msr_access(struct kvm_vcpu * vcpu,struct msr_data * msr_info) sev_es_prevent_msr_access() argument
2813 svm_pat_accesses_gpat(struct kvm_vcpu * vcpu,bool from_host) svm_pat_accesses_gpat() argument
2827 svm_get_msr(struct kvm_vcpu * vcpu,struct msr_data * msr_info) svm_get_msr() argument
2955 svm_complete_emulated_msr(struct kvm_vcpu * vcpu,int err) svm_complete_emulated_msr() argument
2965 svm_set_vm_cr(struct kvm_vcpu * vcpu,u64 data) svm_set_vm_cr() argument
2990 svm_set_msr(struct kvm_vcpu * vcpu,struct msr_data * msr) svm_set_msr() argument
3234 msr_interception(struct kvm_vcpu * vcpu) msr_interception() argument
3242 interrupt_window_interception(struct kvm_vcpu * vcpu) interrupt_window_interception() argument
3251 pause_interception(struct kvm_vcpu * vcpu) pause_interception() argument
3267 invpcid_interception(struct kvm_vcpu * vcpu) invpcid_interception() argument
3300 complete_userspace_buslock(struct kvm_vcpu * vcpu) complete_userspace_buslock() argument
3315 bus_lock_exit(struct kvm_vcpu * vcpu) bus_lock_exit() argument
3331 vmmcall_interception(struct kvm_vcpu * vcpu) vmmcall_interception() argument
3426 dump_vmcb(struct kvm_vcpu * vcpu) dump_vmcb() argument
3636 svm_invoke_exit_handler(struct kvm_vcpu * vcpu,u64 __exit_code) svm_invoke_exit_handler() argument
3683 svm_get_exit_info(struct kvm_vcpu * vcpu,u32 * reason,u64 * info1,u64 * info2,u32 * intr_info,u32 * error_code) svm_get_exit_info() argument
3700 svm_get_entry_info(struct kvm_vcpu * vcpu,u32 * intr_info,u32 * error_code) svm_get_entry_info() argument
3715 svm_handle_exit(struct kvm_vcpu * vcpu,fastpath_t exit_fastpath) svm_handle_exit() argument
3752 svm_set_nested_run_soft_int_state(struct kvm_vcpu * vcpu) svm_set_nested_run_soft_int_state() argument
3762 pre_svm_run(struct kvm_vcpu * vcpu) pre_svm_run() argument
3788 svm_inject_nmi(struct kvm_vcpu * vcpu) svm_inject_nmi() argument
3809 svm_is_vnmi_pending(struct kvm_vcpu * vcpu) svm_is_vnmi_pending() argument
3819 svm_set_vnmi_pending(struct kvm_vcpu * vcpu) svm_set_vnmi_pending() argument
3842 svm_inject_irq(struct kvm_vcpu * vcpu,bool reinjected) svm_inject_irq() argument
3880 svm_fixup_nested_rips(struct kvm_vcpu * vcpu) svm_fixup_nested_rips() argument
3910 svm_complete_interrupt_delivery(struct kvm_vcpu * vcpu,int delivery_mode,int trig_mode,int vector) svm_complete_interrupt_delivery() argument
3960 svm_update_cr8_intercept(struct kvm_vcpu * vcpu,int tpr,int irr) svm_update_cr8_intercept() argument
3983 svm_get_nmi_mask(struct kvm_vcpu * vcpu) svm_get_nmi_mask() argument
3993 svm_set_nmi_mask(struct kvm_vcpu * vcpu,bool masked) svm_set_nmi_mask() argument
4012 svm_nmi_blocked(struct kvm_vcpu * vcpu) svm_nmi_blocked() argument
4029 svm_nmi_allowed(struct kvm_vcpu * vcpu,bool for_injection) svm_nmi_allowed() argument
4044 svm_interrupt_blocked(struct kvm_vcpu * vcpu) svm_interrupt_blocked() argument
4070 svm_interrupt_allowed(struct kvm_vcpu * vcpu,bool for_injection) svm_interrupt_allowed() argument
4090 svm_enable_irq_window(struct kvm_vcpu * vcpu) svm_enable_irq_window() argument
4131 svm_enable_nmi_window(struct kvm_vcpu * vcpu) svm_enable_nmi_window() argument
4186 svm_flush_tlb_asid(struct kvm_vcpu * vcpu) svm_flush_tlb_asid() argument
4210 svm_flush_tlb_current(struct kvm_vcpu * vcpu) svm_flush_tlb_current() argument
4226 svm_flush_tlb_all(struct kvm_vcpu * vcpu) svm_flush_tlb_all() argument
4241 svm_flush_tlb_guest(struct kvm_vcpu * vcpu) svm_flush_tlb_guest() argument
4248 svm_flush_tlb_gva(struct kvm_vcpu * vcpu,gva_t gva,bool * full) svm_flush_tlb_gva() argument
4268 sync_cr8_to_lapic(struct kvm_vcpu * vcpu) sync_cr8_to_lapic() argument
4281 sync_lapic_to_cr8(struct kvm_vcpu * vcpu) sync_lapic_to_cr8() argument
4294 svm_complete_soft_interrupt(struct kvm_vcpu * vcpu,u8 vector,int type) svm_complete_soft_interrupt() argument
4338 svm_complete_interrupts(struct kvm_vcpu * vcpu) svm_complete_interrupts() argument
4410 svm_cancel_injection(struct kvm_vcpu * vcpu) svm_cancel_injection() argument
4421 svm_exit_handlers_fastpath(struct kvm_vcpu * vcpu) svm_exit_handlers_fastpath() argument
4452 svm_vcpu_enter_exit(struct kvm_vcpu * vcpu,unsigned enter_flags) svm_vcpu_enter_exit() argument
4484 svm_vcpu_run(struct kvm_vcpu * vcpu,u64 run_flags) svm_vcpu_run() argument
4659 svm_load_mmu_pgd(struct kvm_vcpu * vcpu,hpa_t root_hpa,int root_level) svm_load_mmu_pgd() argument
4685 svm_patch_hypercall(struct kvm_vcpu * vcpu,unsigned char * hypercall) svm_patch_hypercall() argument
4732 svm_vcpu_after_set_cpuid(struct kvm_vcpu * vcpu) svm_vcpu_after_set_cpuid() argument
4831 svm_check_intercept(struct kvm_vcpu * vcpu,struct x86_instruction_info * info,enum x86_intercept_stage stage,struct x86_exception * exception) svm_check_intercept() argument
4965 svm_handle_exit_irqoff(struct kvm_vcpu * vcpu) svm_handle_exit_irqoff() argument
4979 svm_setup_mce(struct kvm_vcpu * vcpu) svm_setup_mce() argument
4986 svm_smi_blocked(struct kvm_vcpu * vcpu) svm_smi_blocked() argument
4997 svm_smi_allowed(struct kvm_vcpu * vcpu,bool for_injection) svm_smi_allowed() argument
5013 svm_enter_smm(struct kvm_vcpu * vcpu,union kvm_smram * smram) svm_enter_smm() argument
5059 svm_leave_smm(struct kvm_vcpu * vcpu,const union kvm_smram * smram) svm_leave_smm() argument
5117 svm_enable_smi_window(struct kvm_vcpu * vcpu) svm_enable_smi_window() argument
5131 svm_check_emulate_instruction(struct kvm_vcpu * vcpu,int emul_type,void * insn,int insn_len) svm_check_emulate_instruction() argument
5284 svm_apic_init_signal_blocked(struct kvm_vcpu * vcpu) svm_apic_init_signal_blocked() argument
5291 svm_vcpu_deliver_sipi_vector(struct kvm_vcpu * vcpu,u8 vector) svm_vcpu_deliver_sipi_vector() argument
5318 svm_alloc_apic_backing_page(struct kvm_vcpu * vcpu) svm_alloc_apic_backing_page() argument
[all...]
/linux/arch/x86/kvm/vmx/
H A Dvmx.c400 static noinstr void vmx_l1d_flush(struct kvm_vcpu *vcpu) in vmx_l1d_flush() argument
424 vcpu->stat.l1d_flush++; in vmx_l1d_flush()
464 static __always_inline void vmx_l1d_flush(struct kvm_vcpu *vcpu) in vmx_l1d_flush() argument
508 static void vmx_update_fb_clear_dis(struct kvm_vcpu *vcpu, struct vcpu_vmx *vmx) in vmx_update_fb_clear_dis() argument
528 if ((vcpu->arch.arch_capabilities & ARCH_CAP_FB_CLEAR) || in vmx_update_fb_clear_dis()
529 ((vcpu->arch.arch_capabilities & ARCH_CAP_MDS_NO) && in vmx_update_fb_clear_dis()
530 (vcpu->arch.arch_capabilities & ARCH_CAP_TAA_NO) && in vmx_update_fb_clear_dis()
531 (vcpu->arch.arch_capabilities & ARCH_CAP_PSDP_NO) && in vmx_update_fb_clear_dis()
532 (vcpu->arch.arch_capabilities & ARCH_CAP_FBSDP_NO) && in vmx_update_fb_clear_dis()
533 (vcpu->arch.arch_capabilities & ARCH_CAP_SBDR_SSDP_NO))) in vmx_update_fb_clear_dis()
[all …]
/linux/tools/testing/selftests/kvm/x86/
H A Dvmx_msrs_test.c15 static void vmx_fixed1_msr_test(struct kvm_vcpu *vcpu, u32 msr_index, u64 mask) in vmx_fixed1_msr_test() argument
17 u64 val = vcpu_get_msr(vcpu, msr_index); in vmx_fixed1_msr_test()
23 vcpu_set_msr(vcpu, msr_index, val & ~BIT_ULL(bit)); in vmx_fixed1_msr_test()
24 vcpu_set_msr(vcpu, msr_index, val); in vmx_fixed1_msr_test()
28 static void vmx_fixed0_msr_test(struct kvm_vcpu *vcpu, u32 msr_index, u64 mask) in vmx_fixed0_msr_test() argument
30 u64 val = vcpu_get_msr(vcpu, msr_index); in vmx_fixed0_msr_test()
36 vcpu_set_msr(vcpu, msr_index, val | BIT_ULL(bit)); in vmx_fixed0_msr_test()
37 vcpu_set_msr(vcpu, msr_index, val); in vmx_fixed0_msr_test()
41 static void vmx_fixed0and1_msr_test(struct kvm_vcpu *vcpu, u32 msr_index) in vmx_fixed0and1_msr_test() argument
43 vmx_fixed0_msr_test(vcpu, msr_index, GENMASK_ULL(31, 0)); in vmx_fixed0and1_msr_test()
[all …]
/linux/arch/s390/kvm/s390/
H A Ds390.c309 struct kvm_vcpu *vcpu; in kvm_clock_sync() local
314 kvm_for_each_vcpu(i, vcpu, kvm) { in kvm_clock_sync()
315 kvm_clock_sync_scb(vcpu->arch.sie_block, *delta); in kvm_clock_sync()
317 kvm->arch.epoch = vcpu->arch.sie_block->epoch; in kvm_clock_sync()
318 kvm->arch.epdx = vcpu->arch.sie_block->epdx; in kvm_clock_sync()
320 if (vcpu->arch.cputm_enabled) in kvm_clock_sync()
321 vcpu->arch.cputm_start += *delta; in kvm_clock_sync()
322 if (vcpu->arch.vsie_block) in kvm_clock_sync()
323 kvm_clock_sync_scb(vcpu->arch.vsie_block, in kvm_clock_sync()
742 static void sca_del_vcpu(struct kvm_vcpu *vcpu);
756 struct kvm_vcpu *vcpu; icpt_operexc_on_all_vcpus() local
1065 struct kvm_vcpu *vcpu; kvm_s390_vcpu_crypto_reset_all() local
1149 kvm_s390_vcpu_pci_setup(struct kvm_vcpu * vcpu) kvm_s390_vcpu_pci_setup() argument
1161 struct kvm_vcpu *vcpu; kvm_s390_vcpu_pci_enable_interp() local
1188 struct kvm_vcpu *vcpu; kvm_s390_sync_request_broadcast() local
2382 struct kvm_vcpu *vcpu; kvm_s390_cpus_from_pv() local
2427 struct kvm_vcpu *vcpu; kvm_s390_cpus_to_pv() local
3379 kvm_arch_vcpu_destroy(struct kvm_vcpu * vcpu) kvm_arch_vcpu_destroy() argument
3439 sca_del_vcpu(struct kvm_vcpu * vcpu) sca_del_vcpu() argument
3450 sca_add_vcpu(struct kvm_vcpu * vcpu) sca_add_vcpu() argument
3476 __start_cpu_timer_accounting(struct kvm_vcpu * vcpu) __start_cpu_timer_accounting() argument
3485 __stop_cpu_timer_accounting(struct kvm_vcpu * vcpu) __stop_cpu_timer_accounting() argument
3495 __enable_cpu_timer_accounting(struct kvm_vcpu * vcpu) __enable_cpu_timer_accounting() argument
3503 __disable_cpu_timer_accounting(struct kvm_vcpu * vcpu) __disable_cpu_timer_accounting() argument
3510 enable_cpu_timer_accounting(struct kvm_vcpu * vcpu) enable_cpu_timer_accounting() argument
3517 disable_cpu_timer_accounting(struct kvm_vcpu * vcpu) disable_cpu_timer_accounting() argument
3525 kvm_s390_set_cpu_timer(struct kvm_vcpu * vcpu,__u64 cputm) kvm_s390_set_cpu_timer() argument
3537 kvm_s390_get_cpu_timer(struct kvm_vcpu * vcpu) kvm_s390_get_cpu_timer() argument
3562 kvm_arch_vcpu_load(struct kvm_vcpu * vcpu,int cpu) kvm_arch_vcpu_load() argument
3571 kvm_arch_vcpu_put(struct kvm_vcpu * vcpu) kvm_arch_vcpu_put() argument
3580 kvm_arch_vcpu_postcreate(struct kvm_vcpu * vcpu) kvm_arch_vcpu_postcreate() argument
3626 kvm_s390_vcpu_crypto_setup(struct kvm_vcpu * vcpu) kvm_s390_vcpu_crypto_setup() argument
3657 kvm_s390_vcpu_unsetup_cmma(struct kvm_vcpu * vcpu) kvm_s390_vcpu_unsetup_cmma() argument
3664 kvm_s390_vcpu_setup_cmma(struct kvm_vcpu * vcpu) kvm_s390_vcpu_setup_cmma() argument
3675 kvm_s390_vcpu_setup_model(struct kvm_vcpu * vcpu) kvm_s390_vcpu_setup_model() argument
3684 kvm_s390_vcpu_setup(struct kvm_vcpu * vcpu) kvm_s390_vcpu_setup() argument
3859 kvm_arch_vcpu_runnable(struct kvm_vcpu * vcpu) kvm_arch_vcpu_runnable() argument
3865 kvm_arch_vcpu_in_kernel(struct kvm_vcpu * vcpu) kvm_arch_vcpu_in_kernel() argument
3870 kvm_s390_vcpu_block(struct kvm_vcpu * vcpu) kvm_s390_vcpu_block() argument
3876 kvm_s390_vcpu_unblock(struct kvm_vcpu * vcpu) kvm_s390_vcpu_unblock() argument
3881 kvm_s390_vcpu_request(struct kvm_vcpu * vcpu) kvm_s390_vcpu_request() argument
3887 kvm_s390_vcpu_sie_inhibited(struct kvm_vcpu * vcpu) kvm_s390_vcpu_sie_inhibited() argument
3893 kvm_s390_vcpu_request_handled(struct kvm_vcpu * vcpu) kvm_s390_vcpu_request_handled() argument
3902 exit_sie(struct kvm_vcpu * vcpu) exit_sie() argument
3911 kvm_s390_sync_request(int req,struct kvm_vcpu * vcpu) kvm_s390_sync_request() argument
3917 kvm_arch_no_poll(struct kvm_vcpu * vcpu) kvm_arch_no_poll() argument
3928 kvm_arch_vcpu_should_kick(struct kvm_vcpu * vcpu) kvm_arch_vcpu_should_kick() argument
3935 kvm_arch_vcpu_ioctl_get_one_reg(struct kvm_vcpu * vcpu,struct kvm_one_reg * reg) kvm_arch_vcpu_ioctl_get_one_reg() argument
3984 kvm_arch_vcpu_ioctl_set_one_reg(struct kvm_vcpu * vcpu,struct kvm_one_reg * reg) kvm_arch_vcpu_ioctl_set_one_reg() argument
4037 kvm_arch_vcpu_ioctl_normal_reset(struct kvm_vcpu * vcpu) kvm_arch_vcpu_ioctl_normal_reset() argument
4049 kvm_arch_vcpu_ioctl_initial_reset(struct kvm_vcpu * vcpu) kvm_arch_vcpu_ioctl_initial_reset() argument
4093 kvm_arch_vcpu_ioctl_clear_reset(struct kvm_vcpu * vcpu) kvm_arch_vcpu_ioctl_clear_reset() argument
4109 kvm_arch_vcpu_ioctl_set_regs(struct kvm_vcpu * vcpu,struct kvm_regs * regs) kvm_arch_vcpu_ioctl_set_regs() argument
4117 kvm_arch_vcpu_ioctl_get_regs(struct kvm_vcpu * vcpu,struct kvm_regs * regs) kvm_arch_vcpu_ioctl_get_regs() argument
4125 kvm_arch_vcpu_ioctl_set_sregs(struct kvm_vcpu * vcpu,struct kvm_sregs * sregs) kvm_arch_vcpu_ioctl_set_sregs() argument
4137 kvm_arch_vcpu_ioctl_get_sregs(struct kvm_vcpu * vcpu,struct kvm_sregs * sregs) kvm_arch_vcpu_ioctl_get_sregs() argument
4149 kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu * vcpu,struct kvm_fpu * fpu) kvm_arch_vcpu_ioctl_set_fpu() argument
4164 kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu * vcpu,struct kvm_fpu * fpu) kvm_arch_vcpu_ioctl_get_fpu() argument
4179 kvm_arch_vcpu_ioctl_set_initial_psw(struct kvm_vcpu * vcpu,psw_t psw) kvm_arch_vcpu_ioctl_set_initial_psw() argument
4192 kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu * vcpu,struct kvm_translation * tr) kvm_arch_vcpu_ioctl_translate() argument
4202 kvm_arch_vcpu_ioctl_set_guest_debug(struct kvm_vcpu * vcpu,struct kvm_guest_debug * dbg) kvm_arch_vcpu_ioctl_set_guest_debug() argument
4246 kvm_arch_vcpu_ioctl_get_mpstate(struct kvm_vcpu * vcpu,struct kvm_mp_state * mp_state) kvm_arch_vcpu_ioctl_get_mpstate() argument
4261 kvm_arch_vcpu_ioctl_set_mpstate(struct kvm_vcpu * vcpu,struct kvm_mp_state * mp_state) kvm_arch_vcpu_ioctl_set_mpstate() argument
4295 ibs_enabled(struct kvm_vcpu * vcpu) ibs_enabled() argument
4300 vcpu_ucontrol_translate(struct kvm_vcpu * vcpu,gpa_t * gaddr) vcpu_ucontrol_translate() argument
4316 kvm_s390_fixup_prefix(struct kvm_vcpu * vcpu) kvm_s390_fixup_prefix() argument
4338 kvm_s390_handle_requests(struct kvm_vcpu * vcpu) kvm_s390_handle_requests() argument
4416 struct kvm_vcpu *vcpu; __kvm_s390_set_tod_clock() local
4451 __kvm_inject_pfault_token(struct kvm_vcpu * vcpu,bool start_token,unsigned long token) __kvm_inject_pfault_token() argument
4477 kvm_arch_async_page_not_present(struct kvm_vcpu * vcpu,struct kvm_async_pf * work) kvm_arch_async_page_not_present() argument
4486 kvm_arch_async_page_present(struct kvm_vcpu * vcpu,struct kvm_async_pf * work) kvm_arch_async_page_present() argument
4493 kvm_arch_async_page_ready(struct kvm_vcpu * vcpu,struct kvm_async_pf * work) kvm_arch_async_page_ready() argument
4499 kvm_arch_can_dequeue_async_page_present(struct kvm_vcpu * vcpu) kvm_arch_can_dequeue_async_page_present() argument
4508 kvm_arch_setup_async_pf(struct kvm_vcpu * vcpu) kvm_arch_setup_async_pf() argument
4534 vcpu_pre_run(struct kvm_vcpu * vcpu) vcpu_pre_run() argument
4574 vcpu_post_run_addressing_exception(struct kvm_vcpu * vcpu) vcpu_post_run_addressing_exception() argument
4610 kvm_s390_assert_primary_as(struct kvm_vcpu * vcpu) kvm_s390_assert_primary_as() argument
4617 vcpu_dat_fault_handler(struct kvm_vcpu * vcpu,gpa_t gaddr,bool wr) vcpu_dat_fault_handler() argument
4638 vcpu_post_run_handle_fault(struct kvm_vcpu * vcpu) vcpu_post_run_handle_fault() argument
4708 vcpu_post_run(struct kvm_vcpu * vcpu,int sie_return) vcpu_post_run() argument
4768 __vcpu_run(struct kvm_vcpu * vcpu) __vcpu_run() argument
4845 sync_regs_fmt2(struct kvm_vcpu * vcpu) sync_regs_fmt2() argument
4918 sync_regs(struct kvm_vcpu * vcpu) sync_regs() argument
4958 store_regs_fmt2(struct kvm_vcpu * vcpu) store_regs_fmt2() argument
4982 store_regs(struct kvm_vcpu * vcpu) store_regs() argument
5003 kvm_arch_vcpu_ioctl_run(struct kvm_vcpu * vcpu) kvm_arch_vcpu_ioctl_run() argument
5095 kvm_s390_store_status_unloaded(struct kvm_vcpu * vcpu,unsigned long gpa) kvm_s390_store_status_unloaded() argument
5147 kvm_s390_vcpu_store_status(struct kvm_vcpu * vcpu,unsigned long addr) kvm_s390_vcpu_store_status() argument
5160 __disable_ibs_on_vcpu(struct kvm_vcpu * vcpu) __disable_ibs_on_vcpu() argument
5169 struct kvm_vcpu *vcpu; __disable_ibs_on_all_vcpus() local
5176 __enable_ibs_on_vcpu(struct kvm_vcpu * vcpu) __enable_ibs_on_vcpu() argument
5184 kvm_s390_vcpu_start(struct kvm_vcpu * vcpu) kvm_s390_vcpu_start() argument
5239 kvm_s390_vcpu_stop(struct kvm_vcpu * vcpu) kvm_s390_vcpu_stop() argument
5293 kvm_vcpu_ioctl_enable_cap(struct kvm_vcpu * vcpu,struct kvm_enable_cap * cap) kvm_vcpu_ioctl_enable_cap() argument
5317 kvm_s390_vcpu_sida_op(struct kvm_vcpu * vcpu,struct kvm_s390_mem_op * mop) kvm_s390_vcpu_sida_op() argument
5349 kvm_s390_vcpu_mem_op(struct kvm_vcpu * vcpu,struct kvm_s390_mem_op * mop) kvm_s390_vcpu_mem_op() argument
5394 kvm_s390_vcpu_memsida_op(struct kvm_vcpu * vcpu,struct kvm_s390_mem_op * mop) kvm_s390_vcpu_memsida_op() argument
5422 struct kvm_vcpu *vcpu = filp->private_data; kvm_arch_vcpu_unlocked_ioctl() local
5468 kvm_s390_handle_pv_vcpu_dump(struct kvm_vcpu * vcpu,struct kvm_pv_cmd * cmd) kvm_s390_handle_pv_vcpu_dump() argument
5513 struct kvm_vcpu *vcpu = filp->private_data; kvm_arch_vcpu_ioctl() local
5729 kvm_arch_vcpu_fault(struct kvm_vcpu * vcpu,struct vm_fault * vmf) kvm_arch_vcpu_fault() argument
5807 kvm_arch_vcpu_pre_fault_memory(struct kvm_vcpu * vcpu,struct kvm_pre_fault_memory * range) kvm_arch_vcpu_pre_fault_memory() argument
[all...]
/linux/virt/kvm/
H A Dasync_pf.c38 void kvm_async_pf_vcpu_init(struct kvm_vcpu *vcpu) in kvm_async_pf_vcpu_init() argument
40 INIT_LIST_HEAD(&vcpu->async_pf.done); in kvm_async_pf_vcpu_init()
41 INIT_LIST_HEAD(&vcpu->async_pf.queue); in kvm_async_pf_vcpu_init()
42 spin_lock_init(&vcpu->async_pf.lock); in kvm_async_pf_vcpu_init()
49 struct kvm_vcpu *vcpu = apf->vcpu; in async_pf_execute() local
50 struct mm_struct *mm = vcpu->kvm->mm; in async_pf_execute()
78 kvm_arch_async_page_present(vcpu, apf); in async_pf_execute()
80 spin_lock(&vcpu->async_pf.lock); in async_pf_execute()
81 first = list_empty(&vcpu in async_pf_execute()
120 kvm_clear_async_pf_completion_queue(struct kvm_vcpu * vcpu) kvm_clear_async_pf_completion_queue() argument
153 kvm_check_async_pf_completion(struct kvm_vcpu * vcpu) kvm_check_async_pf_completion() argument
179 kvm_setup_async_pf(struct kvm_vcpu * vcpu,gpa_t cr2_or_gpa,unsigned long hva,struct kvm_arch_async_pf * arch) kvm_setup_async_pf() argument
216 kvm_async_pf_wakeup_all(struct kvm_vcpu * vcpu) kvm_async_pf_wakeup_all() argument
[all...]
/linux/tools/testing/selftests/kvm/arm64/
H A Dexternal_aborts.c31 static struct kvm_vm *vm_create_with_dabt_handler(struct kvm_vcpu **vcpu, void *guest_code, in vm_create_with_dabt_handler() argument
34 struct kvm_vm *vm = vm_create_with_one_vcpu(vcpu, guest_code); in vm_create_with_dabt_handler()
37 vcpu_init_descriptor_tables(*vcpu); in vm_create_with_dabt_handler()
45 static void vcpu_inject_sea(struct kvm_vcpu *vcpu) in vcpu_inject_sea() argument
50 vcpu_events_set(vcpu, &events); in vcpu_inject_sea()
53 static bool vcpu_has_ras(struct kvm_vcpu *vcpu) in vcpu_has_ras() argument
55 u64 pfr0 = vcpu_get_reg(vcpu, KVM_ARM64_SYS_REG(SYS_ID_AA64PFR0_EL1)); in vcpu_has_ras()
65 static void vcpu_inject_serror(struct kvm_vcpu *vcpu) in vcpu_inject_serror() argument
70 if (vcpu_has_ras(vcpu)) { in vcpu_inject_serror()
75 vcpu_events_set(vcpu, &events); in vcpu_inject_serror()
[all …]
/linux/tools/testing/selftests/kvm/s390/
H A Duser_operexec.c24 struct kvm_vcpu *vcpu; in test_user_instr0() local
28 vm = vm_create_with_one_vcpu(&vcpu, guest_code_instr0); in test_user_instr0()
32 vcpu_run(vcpu); in test_user_instr0()
33 TEST_ASSERT_KVM_EXIT_REASON(vcpu, KVM_EXIT_S390_SIEIC); in test_user_instr0()
34 TEST_ASSERT_EQ(vcpu->run->s390_sieic.icptcode, ICPT_OPEREXC); in test_user_instr0()
35 TEST_ASSERT_EQ(vcpu->run->s390_sieic.ipa, 0); in test_user_instr0()
47 struct kvm_vcpu *vcpu; in test_user_operexec() local
51 vm = vm_create_with_one_vcpu(&vcpu, guest_code_user_operexec); in test_user_operexec()
55 vcpu_run(vcpu); in test_user_operexec()
56 TEST_ASSERT_KVM_EXIT_REASON(vcpu, KVM_EXIT_S390_SIEIC); in test_user_operexec()
[all …]
H A Dresets.c60 static void test_one_reg(struct kvm_vcpu *vcpu, u64 id, u64 value) in test_one_reg() argument
64 eval_reg = vcpu_get_reg(vcpu, id); in test_one_reg()
68 static void assert_noirq(struct kvm_vcpu *vcpu) in assert_noirq() argument
75 irqs = __vcpu_ioctl(vcpu, KVM_S390_GET_IRQ_STATE, &irq_state); in assert_noirq()
85 static void assert_clear(struct kvm_vcpu *vcpu) in assert_clear() argument
87 struct kvm_sync_regs *sync_regs = &vcpu->run->s.regs; in assert_clear()
92 vcpu_regs_get(vcpu, &regs); in assert_clear()
95 vcpu_sregs_get(vcpu, &sregs); in assert_clear()
98 vcpu_fpu_get(vcpu, &fpu); in assert_clear()
112 static void assert_initial_noclear(struct kvm_vcpu *vcpu) in assert_initial_noclear() argument
[all …]

12345678910>>...14