Lines Matching refs:arch

10  * This file is derived from arch/powerpc/kvm/44x.c,
113 vcpu->kvm->arch.kvm_ops->inject_interrupt(vcpu, vec, flags);
146 unsigned long old_pending = vcpu->arch.pending_exceptions;
149 &vcpu->arch.pending_exceptions);
151 kvmppc_update_int_pending(vcpu, vcpu->arch.pending_exceptions,
160 &vcpu->arch.pending_exceptions);
207 return test_bit(BOOK3S_IRQPRIO_DECREMENTER, &vcpu->arch.pending_exceptions);
241 vcpu->arch.external_oneshot = 1;
358 if (vcpu->arch.external_oneshot) {
359 vcpu->arch.external_oneshot = 0;
370 unsigned long *pending = &vcpu->arch.pending_exceptions;
371 unsigned long old_pending = vcpu->arch.pending_exceptions;
375 if (vcpu->arch.pending_exceptions)
376 printk(KERN_EMERG "KVM: Check pending: %lx\n", vcpu->arch.pending_exceptions);
382 clear_bit(priority, &vcpu->arch.pending_exceptions);
401 ulong mp_pa = vcpu->arch.magic_page_pa & KVM_PAM;
410 ulong shared_page = ((ulong)vcpu->arch.shared) & PAGE_MASK;
433 r = vcpu->arch.mmu.xlate(vcpu, eaddr, pte, data, iswrite);
445 if ((vcpu->arch.hflags & BOOK3S_HFLAG_SPLIT_HACK) &&
486 ret = vcpu->kvm->arch.kvm_ops->get_sregs(vcpu, sregs);
498 ret = vcpu->kvm->arch.kvm_ops->set_sregs(vcpu, sregs);
516 regs->pid = vcpu->arch.pid;
575 r = vcpu->kvm->arch.kvm_ops->get_one_reg(vcpu, id, val);
590 *val = get_reg_val(id, vcpu->arch.fp.fpscr);
596 val->vsxval[0] = vcpu->arch.fp.fpr[i][0];
597 val->vsxval[1] = vcpu->arch.fp.fpr[i][1];
608 if (!vcpu->arch.icp && !vcpu->arch.xive_vcpu) {
620 if (!vcpu->arch.xive_vcpu) {
631 *val = get_reg_val(id, vcpu->arch.fscr);
634 *val = get_reg_val(id, vcpu->arch.tar);
637 *val = get_reg_val(id, vcpu->arch.ebbhr);
640 *val = get_reg_val(id, vcpu->arch.ebbrr);
643 *val = get_reg_val(id, vcpu->arch.bescr);
646 *val = get_reg_val(id, vcpu->arch.ic);
663 r = vcpu->kvm->arch.kvm_ops->set_one_reg(vcpu, id, val);
678 vcpu->arch.fp.fpscr = set_reg_val(id, *val);
684 vcpu->arch.fp.fpr[i][0] = val->vsxval[0];
685 vcpu->arch.fp.fpr[i][1] = val->vsxval[1];
693 if (!vcpu->arch.icp && !vcpu->arch.xive_vcpu) {
705 if (!vcpu->arch.xive_vcpu) {
716 vcpu->arch.fscr = set_reg_val(id, *val);
719 vcpu->arch.tar = set_reg_val(id, *val);
722 vcpu->arch.ebbhr = set_reg_val(id, *val);
725 vcpu->arch.ebbrr = set_reg_val(id, *val);
728 vcpu->arch.bescr = set_reg_val(id, *val);
731 vcpu->arch.ic = set_reg_val(id, *val);
744 vcpu->kvm->arch.kvm_ops->vcpu_load(vcpu, cpu);
749 vcpu->kvm->arch.kvm_ops->vcpu_put(vcpu);
754 vcpu->kvm->arch.kvm_ops->set_msr(vcpu, msr);
760 return vcpu->kvm->arch.kvm_ops->vcpu_run(vcpu);
786 return vcpu->kvm->arch.kvm_ops->vcpu_create(vcpu);
791 vcpu->kvm->arch.kvm_ops->vcpu_free(vcpu);
796 return vcpu->kvm->arch.kvm_ops->check_requests(vcpu);
806 return kvm->arch.kvm_ops->get_dirty_log(kvm, log);
811 kvm->arch.kvm_ops->free_memslot(slot);
816 kvm->arch.kvm_ops->flush_memslot(kvm, memslot);
824 return kvm->arch.kvm_ops->prepare_memory_region(kvm, memslot, mem,
834 kvm->arch.kvm_ops->commit_memory_region(kvm, mem, old, new, change);
840 return kvm->arch.kvm_ops->unmap_hva_range(kvm, start, end);
845 return kvm->arch.kvm_ops->age_hva(kvm, start, end);
850 return kvm->arch.kvm_ops->test_age_hva(kvm, hva);
855 kvm->arch.kvm_ops->set_spte_hva(kvm, hva, pte);
863 INIT_LIST_HEAD_RCU(&kvm->arch.spapr_tce_tables);
864 INIT_LIST_HEAD(&kvm->arch.rtas_tokens);
865 mutex_init(&kvm->arch.rtas_token_lock);
868 return kvm->arch.kvm_ops->init_vm(kvm);
873 kvm->arch.kvm_ops->destroy_vm(kvm);
877 WARN_ON(!list_empty(&kvm->arch.spapr_tce_tables));
885 kfree(kvm->arch.xive_devices.native);
886 kvm->arch.xive_devices.native = NULL;
887 kfree(kvm->arch.xive_devices.xics_on_xive);
888 kvm->arch.xive_devices.xics_on_xive = NULL;
889 kfree(kvm->arch.xics_device);
890 kvm->arch.xics_device = NULL;
988 return kvm->arch.kvm_ops->hcall_implemented(hcall);