Lines Matching refs:irq_source_id
37 struct kvm *kvm, int irq_source_id, int level, in kvm_set_pic_irq() argument
41 return kvm_pic_set_irq(pic, e->irqchip.pin, irq_source_id, level); in kvm_set_pic_irq()
45 struct kvm *kvm, int irq_source_id, int level, in kvm_set_ioapic_irq() argument
49 return kvm_ioapic_set_irq(ioapic, e->irqchip.pin, irq_source_id, level, in kvm_set_ioapic_irq()
114 struct kvm *kvm, int irq_source_id, int level, bool line_status) in kvm_set_msi() argument
128 struct kvm *kvm, int irq_source_id, int level, in kvm_arch_set_irq_inatomic() argument
148 int irq_source_id; in kvm_request_irq_source_id() local
151 irq_source_id = find_first_zero_bit(bitmap, BITS_PER_LONG); in kvm_request_irq_source_id()
153 if (irq_source_id >= BITS_PER_LONG) { in kvm_request_irq_source_id()
155 irq_source_id = -EFAULT; in kvm_request_irq_source_id()
159 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID); in kvm_request_irq_source_id()
160 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID); in kvm_request_irq_source_id()
161 set_bit(irq_source_id, bitmap); in kvm_request_irq_source_id()
165 return irq_source_id; in kvm_request_irq_source_id()
168 void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id) in kvm_free_irq_source_id() argument
170 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID); in kvm_free_irq_source_id()
171 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID); in kvm_free_irq_source_id()
174 if (irq_source_id < 0 || in kvm_free_irq_source_id()
175 irq_source_id >= BITS_PER_LONG) { in kvm_free_irq_source_id()
179 clear_bit(irq_source_id, &kvm->arch.irq_sources_bitmap); in kvm_free_irq_source_id()
183 kvm_ioapic_clear_all(kvm->arch.vioapic, irq_source_id); in kvm_free_irq_source_id()
184 kvm_pic_clear_all(pic_irqchip(kvm), irq_source_id); in kvm_free_irq_source_id()