Lines Matching refs:irq_source_id
35 struct kvm *kvm, int irq_source_id, int level, in kvm_set_pic_irq() argument
39 return kvm_pic_set_irq(pic, e->irqchip.pin, irq_source_id, level); in kvm_set_pic_irq()
43 struct kvm *kvm, int irq_source_id, int level, in kvm_set_ioapic_irq() argument
47 return kvm_ioapic_set_irq(ioapic, e->irqchip.pin, irq_source_id, level, in kvm_set_ioapic_irq()
115 struct kvm *kvm, int irq_source_id, int level, bool line_status) in kvm_set_msi() argument
149 int kvm_set_irq_inatomic(struct kvm *kvm, int irq_source_id, u32 irq, int level) in kvm_set_irq_inatomic() argument
156 trace_kvm_set_irq(irq, level, irq_source_id); in kvm_set_irq_inatomic()
181 int irq_source_id; in kvm_request_irq_source_id() local
184 irq_source_id = find_first_zero_bit(bitmap, BITS_PER_LONG); in kvm_request_irq_source_id()
186 if (irq_source_id >= BITS_PER_LONG) { in kvm_request_irq_source_id()
188 irq_source_id = -EFAULT; in kvm_request_irq_source_id()
192 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID); in kvm_request_irq_source_id()
193 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID); in kvm_request_irq_source_id()
194 set_bit(irq_source_id, bitmap); in kvm_request_irq_source_id()
198 return irq_source_id; in kvm_request_irq_source_id()
201 void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id) in kvm_free_irq_source_id() argument
203 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID); in kvm_free_irq_source_id()
204 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID); in kvm_free_irq_source_id()
207 if (irq_source_id < 0 || in kvm_free_irq_source_id()
208 irq_source_id >= BITS_PER_LONG) { in kvm_free_irq_source_id()
212 clear_bit(irq_source_id, &kvm->arch.irq_sources_bitmap); in kvm_free_irq_source_id()
216 kvm_ioapic_clear_all(kvm->arch.vioapic, irq_source_id); in kvm_free_irq_source_id()
217 kvm_pic_clear_all(pic_irqchip(kvm), irq_source_id); in kvm_free_irq_source_id()