Lines Matching defs:irq_source_id
31 struct kvm *kvm, int irq_source_id, int level,
35 return kvm_pic_set_irq(pic, e->irqchip.pin, irq_source_id, level);
39 struct kvm *kvm, int irq_source_id, int level,
43 return kvm_ioapic_set_irq(ioapic, e->irqchip.pin, irq_source_id, level,
132 struct kvm *kvm, int irq_source_id, int level, bool line_status)
149 struct kvm *kvm, int irq_source_id, int level,
160 struct kvm *kvm, int irq_source_id, int level,
169 return kvm_hv_set_sint(e, kvm, irq_source_id, level,
200 int irq_source_id;
203 irq_source_id = find_first_zero_bit(bitmap, BITS_PER_LONG);
205 if (irq_source_id >= BITS_PER_LONG) {
207 irq_source_id = -EFAULT;
211 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID);
212 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID);
213 set_bit(irq_source_id, bitmap);
217 return irq_source_id;
220 void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id)
222 ASSERT(irq_source_id != KVM_USERSPACE_IRQ_SOURCE_ID);
223 ASSERT(irq_source_id != KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID);
226 if (irq_source_id < 0 ||
227 irq_source_id >= BITS_PER_LONG) {
231 clear_bit(irq_source_id, &kvm->arch.irq_sources_bitmap);
235 kvm_ioapic_clear_all(kvm->arch.vioapic, irq_source_id);
236 kvm_pic_clear_all(kvm->arch.vpic, irq_source_id);