Lines Matching refs:irqfds
68 * Since resampler irqfds share an IRQ source ID, we de-assert once
69 * then notify all of the resampler irqfds using this GSI. We can't
97 mutex_lock(&kvm->irqfds.resampler_lock);
114 mutex_unlock(&kvm->irqfds.resampler_lock);
159 /* assumes kvm->irqfds.lock is held */
169 * assumes kvm->irqfds.lock is held
227 spin_lock_irqsave(&kvm->irqfds.lock, iflags);
231 * we could acquire the irqfds.lock since the item is
241 spin_unlock_irqrestore(&kvm->irqfds.lock, iflags);
256 /* Must be called under irqfds.lock */
327 seqcount_spinlock_init(&irqfd->irq_entry_sc, &kvm->irqfds.lock);
355 mutex_lock(&kvm->irqfds.resampler_lock);
358 &kvm->irqfds.resampler_list, link) {
370 mutex_unlock(&kvm->irqfds.resampler_lock);
380 list_add_rcu(&resampler->link, &kvm->irqfds.resampler_list);
389 mutex_unlock(&kvm->irqfds.resampler_lock);
399 spin_lock_irq(&kvm->irqfds.lock);
402 list_for_each_entry(tmp, &kvm->irqfds.items, list) {
407 spin_unlock_irq(&kvm->irqfds.lock);
414 list_add_tail(&irqfd->list, &kvm->irqfds.items);
416 spin_unlock_irq(&kvm->irqfds.lock);
535 spin_lock_init(&kvm->irqfds.lock);
536 INIT_LIST_HEAD(&kvm->irqfds.items);
537 INIT_LIST_HEAD(&kvm->irqfds.resampler_list);
538 mutex_init(&kvm->irqfds.resampler_lock);
557 spin_lock_irq(&kvm->irqfds.lock);
559 list_for_each_entry_safe(irqfd, tmp, &kvm->irqfds.items, list) {
565 * kvm_irq_routing_update using irqfds.lock).
574 spin_unlock_irq(&kvm->irqfds.lock);
601 * irqfds that still remain open
608 spin_lock_irq(&kvm->irqfds.lock);
610 list_for_each_entry_safe(irqfd, tmp, &kvm->irqfds.items, list)
613 spin_unlock_irq(&kvm->irqfds.lock);
631 spin_lock_irq(&kvm->irqfds.lock);
633 list_for_each_entry(irqfd, &kvm->irqfds.items, list) {
635 /* Under irqfds.lock, so can read irq_entry safely */
652 spin_unlock_irq(&kvm->irqfds.lock);
666 &kvm->irqfds.resampler_list, link,