Lines Matching refs:vcpu
117 struct kvm_vcpu *vcpu = current->thread.kvm_vcpu; in get_current_cpu() local
118 return vcpu ? vcpu->arch.irq_cpu_id : -1; in get_current_cpu()
179 struct kvm_vcpu *vcpu; member
249 if (!dst->vcpu) { in mpic_irq_raise()
255 pr_debug("%s: cpu %d output %d\n", __func__, dst->vcpu->arch.irq_cpu_id, in mpic_irq_raise()
261 kvm_vcpu_ioctl_interrupt(dst->vcpu, &irq); in mpic_irq_raise()
267 if (!dst->vcpu) { in mpic_irq_lower()
273 pr_debug("%s: cpu %d output %d\n", __func__, dst->vcpu->arch.irq_cpu_id, in mpic_irq_lower()
279 kvmppc_core_dequeue_external(dst->vcpu); in mpic_irq_lower()
1177 void kvmppc_mpic_set_epr(struct kvm_vcpu *vcpu) in kvmppc_mpic_set_epr() argument
1179 struct openpic *opp = vcpu->arch.mpic; in kvmppc_mpic_set_epr()
1180 int cpu = vcpu->arch.irq_cpu_id; in kvmppc_mpic_set_epr()
1186 kvmppc_set_epr(vcpu, openpic_iack(opp, &opp->dst[cpu], cpu)); in kvmppc_mpic_set_epr()
1372 static int kvm_mpic_read(struct kvm_vcpu *vcpu, in kvm_mpic_read() argument
1414 static int kvm_mpic_write(struct kvm_vcpu *vcpu, in kvm_mpic_write() argument
1733 int kvmppc_mpic_connect_vcpu(struct kvm_device *dev, struct kvm_vcpu *vcpu, in kvmppc_mpic_connect_vcpu() argument
1741 if (opp->kvm != vcpu->kvm) in kvmppc_mpic_connect_vcpu()
1748 if (opp->dst[cpu].vcpu) { in kvmppc_mpic_connect_vcpu()
1752 if (vcpu->arch.irq_type) { in kvmppc_mpic_connect_vcpu()
1757 opp->dst[cpu].vcpu = vcpu; in kvmppc_mpic_connect_vcpu()
1760 vcpu->arch.mpic = opp; in kvmppc_mpic_connect_vcpu()
1761 vcpu->arch.irq_cpu_id = cpu; in kvmppc_mpic_connect_vcpu()
1762 vcpu->arch.irq_type = KVMPPC_IRQ_MPIC; in kvmppc_mpic_connect_vcpu()
1766 vcpu->arch.epr_flags |= KVMPPC_EPR_KERNEL; in kvmppc_mpic_connect_vcpu()
1778 void kvmppc_mpic_disconnect_vcpu(struct openpic *opp, struct kvm_vcpu *vcpu) in kvmppc_mpic_disconnect_vcpu() argument
1780 BUG_ON(!opp->dst[vcpu->arch.irq_cpu_id].vcpu); in kvmppc_mpic_disconnect_vcpu()
1782 opp->dst[vcpu->arch.irq_cpu_id].vcpu = NULL; in kvmppc_mpic_disconnect_vcpu()