Lines Matching refs:v
43 static int pending_userspace_extint(struct kvm_vcpu *v) in pending_userspace_extint() argument
45 return v->arch.pending_external_vector != -1; in pending_userspace_extint()
52 static int kvm_cpu_has_extint(struct kvm_vcpu *v) in kvm_cpu_has_extint() argument
54 u8 accept = kvm_apic_accept_pic_intr(v); in kvm_cpu_has_extint()
57 if (irqchip_split(v->kvm)) in kvm_cpu_has_extint()
58 return pending_userspace_extint(v); in kvm_cpu_has_extint()
60 return pic_irqchip(v->kvm)->output; in kvm_cpu_has_extint()
71 int kvm_cpu_has_injectable_intr(struct kvm_vcpu *v) in kvm_cpu_has_injectable_intr() argument
73 if (!lapic_in_kernel(v)) in kvm_cpu_has_injectable_intr()
74 return v->arch.interrupt.pending; in kvm_cpu_has_injectable_intr()
76 if (kvm_cpu_has_extint(v)) in kvm_cpu_has_injectable_intr()
79 if (kvm_vcpu_apic_vid_enabled(v)) in kvm_cpu_has_injectable_intr()
82 return kvm_apic_has_interrupt(v) != -1; /* LAPIC */ in kvm_cpu_has_injectable_intr()
89 int kvm_cpu_has_interrupt(struct kvm_vcpu *v) in kvm_cpu_has_interrupt() argument
91 if (!lapic_in_kernel(v)) in kvm_cpu_has_interrupt()
92 return v->arch.interrupt.pending; in kvm_cpu_has_interrupt()
94 if (kvm_cpu_has_extint(v)) in kvm_cpu_has_interrupt()
97 return kvm_apic_has_interrupt(v) != -1; /* LAPIC */ in kvm_cpu_has_interrupt()
105 static int kvm_cpu_get_extint(struct kvm_vcpu *v) in kvm_cpu_get_extint() argument
107 if (kvm_cpu_has_extint(v)) { in kvm_cpu_get_extint()
108 if (irqchip_split(v->kvm)) { in kvm_cpu_get_extint()
109 int vector = v->arch.pending_external_vector; in kvm_cpu_get_extint()
111 v->arch.pending_external_vector = -1; in kvm_cpu_get_extint()
114 return kvm_pic_read_irq(v->kvm); /* PIC */ in kvm_cpu_get_extint()
122 int kvm_cpu_get_interrupt(struct kvm_vcpu *v) in kvm_cpu_get_interrupt() argument
126 if (!lapic_in_kernel(v)) in kvm_cpu_get_interrupt()
127 return v->arch.interrupt.nr; in kvm_cpu_get_interrupt()
129 vector = kvm_cpu_get_extint(v); in kvm_cpu_get_interrupt()
134 return kvm_get_apic_interrupt(v); /* APIC */ in kvm_cpu_get_interrupt()