Lines Matching defs:kvm

266 	if (!vcpu->arch.papr_enabled && is_kvmppc_hv_enabled(vcpu->kvm))
333 if (vcpu->kvm->arch.kvm_ops && vcpu->kvm->arch.kvm_ops->store_to_eaddr)
334 r = vcpu->kvm->arch.kvm_ops->store_to_eaddr(vcpu, eaddr, ptr,
360 if (kvm_write_guest(vcpu->kvm, pte.raddr, ptr, size))
376 if (vcpu->kvm->arch.kvm_ops && vcpu->kvm->arch.kvm_ops->load_from_eaddr)
377 rc = vcpu->kvm->arch.kvm_ops->load_from_eaddr(vcpu, eaddr, ptr,
406 vcpu->srcu_idx = srcu_read_lock(&vcpu->kvm->srcu);
407 rc = kvm_read_guest(vcpu->kvm, pte.raddr, ptr, size);
408 srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx);
431 int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
458 kvm->arch.kvm_ops = kvm_ops;
459 return kvmppc_core_init_vm(kvm);
464 void kvm_arch_destroy_vm(struct kvm *kvm)
475 if (is_kvmppc_hv_enabled(kvm))
479 kvm_for_each_vcpu(i, vcpu, kvm)
482 mutex_lock(&kvm->lock);
483 for (i = 0; i < atomic_read(&kvm->online_vcpus); i++)
484 kvm->vcpus[i] = NULL;
486 atomic_set(&kvm->online_vcpus, 0);
488 kvmppc_core_destroy_vm(kvm);
490 mutex_unlock(&kvm->lock);
493 module_put(kvm->arch.kvm_ops->owner);
496 int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext)
502 if (kvm) {
507 hv_enabled = is_kvmppc_hv_enabled(kvm);
582 if (kvm) {
583 if (kvm->arch.emul_smt_mode > 1)
584 r = kvm->arch.emul_smt_mode;
586 r = kvm->arch.smt_mode;
696 void kvm_arch_free_memslot(struct kvm *kvm, struct kvm_memory_slot *slot)
698 kvmppc_core_free_memslot(kvm, slot);
701 int kvm_arch_prepare_memory_region(struct kvm *kvm,
706 return kvmppc_core_prepare_memory_region(kvm, memslot, mem, change);
709 void kvm_arch_commit_memory_region(struct kvm *kvm,
715 kvmppc_core_commit_memory_region(kvm, mem, old, new, change);
718 void kvm_arch_flush_shadow_memslot(struct kvm *kvm,
721 kvmppc_core_flush_memslot(kvm, slot);
724 int kvm_arch_vcpu_precreate(struct kvm *kvm, unsigned int id)
843 struct kvm *kvm = irqfd->kvm;
845 if (kvm->arch.kvm_ops->irq_bypass_add_producer)
846 return kvm->arch.kvm_ops->irq_bypass_add_producer(cons, prod);
856 struct kvm *kvm = irqfd->kvm;
858 if (kvm->arch.kvm_ops->irq_bypass_del_producer)
859 kvm->arch.kvm_ops->irq_bypass_del_producer(cons, prod);
1164 if (vcpu->kvm->arch.kvm_ops->giveup_ext)
1165 vcpu->kvm->arch.kvm_ops->giveup_ext(vcpu, MSR_FP);
1180 if (vcpu->kvm->arch.kvm_ops->giveup_ext)
1181 vcpu->kvm->arch.kvm_ops->giveup_ext(vcpu, MSR_VSX);
1197 if (vcpu->kvm->arch.kvm_ops->giveup_ext)
1198 vcpu->kvm->arch.kvm_ops->giveup_ext(vcpu, MSR_VEC);
1255 idx = srcu_read_lock(&vcpu->kvm->srcu);
1260 srcu_read_unlock(&vcpu->kvm->srcu, idx);
1360 idx = srcu_read_lock(&vcpu->kvm->srcu);
1365 srcu_read_unlock(&vcpu->kvm->srcu, idx);
1975 if (!is_kvmppc_hv_enabled(vcpu->kvm))
1978 vcpu->kvm->arch.fwnmi_enabled = true;
1992 bool kvm_arch_intc_initialized(struct kvm *kvm)
1995 if (kvm->arch.mpic)
1999 if (kvm->arch.xics || kvm->arch.xive)
2126 int kvm_vm_ioctl_irq_line(struct kvm *kvm, struct kvm_irq_level *irq_event,
2129 if (!irqchip_in_kernel(kvm))
2132 irq_event->status = kvm_set_irq(kvm, KVM_USERSPACE_IRQ_SOURCE_ID,
2139 int kvm_vm_ioctl_enable_cap(struct kvm *kvm,
2156 if (!kvmppc_book3s_hcall_implemented(kvm, hcall))
2159 set_bit(hcall / 4, kvm->arch.enabled_hcalls);
2161 clear_bit(hcall / 4, kvm->arch.enabled_hcalls);
2170 if (kvm->arch.kvm_ops->set_smt_mode)
2171 r = kvm->arch.kvm_ops->set_smt_mode(kvm, mode, flags);
2177 if (!is_kvmppc_hv_enabled(kvm) ||
2178 !kvm->arch.kvm_ops->enable_nested)
2180 r = kvm->arch.kvm_ops->enable_nested(kvm);
2186 if (!is_kvmppc_hv_enabled(kvm) || !kvm->arch.kvm_ops->enable_svm)
2188 r = kvm->arch.kvm_ops->enable_svm(kvm);
2330 struct kvm *kvm __maybe_unused = filp->private_data;
2357 r = kvm_vm_ioctl_create_spapr_tce(kvm, &create_tce_64);
2374 r = kvm_vm_ioctl_create_spapr_tce(kvm, &create_tce_64);
2381 struct kvm *kvm = filp->private_data;
2384 r = kvm->arch.kvm_ops->get_smmu_info(kvm, &info);
2390 struct kvm *kvm = filp->private_data;
2392 r = kvm_vm_ioctl_rtas_define_token(kvm, argp);
2396 struct kvm *kvm = filp->private_data;
2400 if (!kvm->arch.kvm_ops->configure_mmu)
2405 r = kvm->arch.kvm_ops->configure_mmu(kvm, &cfg);
2409 struct kvm *kvm = filp->private_data;
2413 if (!kvm->arch.kvm_ops->get_rmmu_info)
2415 r = kvm->arch.kvm_ops->get_rmmu_info(kvm, &info);
2429 struct kvm *kvm = filp->private_data;
2432 if (!kvm->arch.kvm_ops->svm_off)
2435 r = kvm->arch.kvm_ops->svm_off(kvm);
2439 struct kvm *kvm = filp->private_data;
2440 r = kvm->arch.kvm_ops->arch_vm_ioctl(filp, ioctl, arg);