Lines Matching defs:kvm
108 vcpu = kvm_get_vcpu_by_id(&kvm_svm->kvm, vcpu_id);
124 void avic_vm_destroy(struct kvm *kvm)
127 struct kvm_svm *kvm_svm = to_kvm_svm(kvm);
142 int avic_vm_init(struct kvm *kvm)
146 struct kvm_svm *kvm_svm = to_kvm_svm(kvm);
190 avic_vm_destroy(kvm);
197 struct kvm_svm *kvm_svm = to_kvm_svm(svm->vcpu.kvm);
206 if (kvm_apicv_activated(svm->vcpu.kvm))
216 struct kvm_svm *kvm_svm = to_kvm_svm(vcpu->kvm);
234 static int avic_update_access_page(struct kvm *kvm, bool activate)
238 mutex_lock(&kvm->slots_lock);
242 * memory region. So, we need to ensure that kvm->mm == current->mm.
244 if ((kvm->arch.apic_access_page_done == activate) ||
245 (kvm->mm != current->mm))
248 ret = __x86_set_memory_region(kvm,
255 kvm->arch.apic_access_page_done = activate;
257 mutex_unlock(&kvm->slots_lock);
273 if (kvm_apicv_activated(vcpu->kvm)) {
276 ret = avic_update_access_page(vcpu->kvm, true);
327 struct kvm *kvm = svm->vcpu.kvm;
335 kvm_for_each_vcpu(i, vcpu, kvm) {
360 struct kvm_svm *kvm_svm = to_kvm_svm(vcpu->kvm);
564 if (!avic || !irqchip_in_kernel(vcpu->kvm))
591 srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx);
592 kvm_request_apicv_update(vcpu->kvm, activate,
594 vcpu->srcu_idx = srcu_read_lock(&vcpu->kvm->srcu);
617 if (!kvm_arch_has_assigned_device(vcpu->kvm))
727 struct kvm *kvm = svm->vcpu.kvm;
729 struct kvm_vcpu *prev_vcpu = kvm_get_vcpu_by_id(kvm, vcpu_id);
771 get_pi_vcpu_info(struct kvm *kvm, struct kvm_kernel_irq_routing_entry *e,
777 kvm_set_msi_irq(kvm, e, &irq);
779 if (!kvm_intr_is_single_vcpu(kvm, &irq, &vcpu) ||
798 * @kvm: kvm
804 int svm_update_pi_irte(struct kvm *kvm, unsigned int host_irq,
811 if (!kvm_arch_has_assigned_device(kvm) ||
818 idx = srcu_read_lock(&kvm->irq_srcu);
819 irq_rt = srcu_dereference(kvm->irq_routing, &kvm->irq_srcu);
842 if (!get_pi_vcpu_info(kvm, e, &vcpu_info, &svm) && set &&
849 pi.ga_tag = AVIC_GATAG(to_kvm_svm(kvm)->avic_vm_id,
887 vcpu = kvm_get_vcpu_by_id(kvm, id);
907 srcu_read_unlock(&kvm->irq_srcu, idx);
923 void svm_pre_update_apicv_exec_ctrl(struct kvm *kvm, bool activate)
925 avic_update_access_page(kvm, activate);
936 if (!kvm_arch_has_assigned_device(vcpu->kvm))