Lines Matching refs:resampler

54 	if (!irqfd->resampler) {  in irqfd_inject()
72 struct kvm_kernel_irqfd_resampler *resampler; in irqfd_resampler_ack() local
77 resampler = container_of(kian, in irqfd_resampler_ack()
79 kvm = resampler->kvm; in irqfd_resampler_ack()
82 resampler->notifier.gsi, 0, false); in irqfd_resampler_ack()
86 list_for_each_entry_rcu(irqfd, &resampler->list, resampler_link) in irqfd_resampler_ack()
95 struct kvm_kernel_irqfd_resampler *resampler = irqfd->resampler; in irqfd_resampler_shutdown() local
96 struct kvm *kvm = resampler->kvm; in irqfd_resampler_shutdown()
103 if (list_empty(&resampler->list)) { in irqfd_resampler_shutdown()
104 list_del(&resampler->link); in irqfd_resampler_shutdown()
105 kvm_unregister_irq_ack_notifier(kvm, &resampler->notifier); in irqfd_resampler_shutdown()
107 resampler->notifier.gsi, 0, false); in irqfd_resampler_shutdown()
108 kfree(resampler); in irqfd_resampler_shutdown()
136 if (irqfd->resampler) { in irqfd_shutdown()
322 struct kvm_kernel_irqfd_resampler *resampler; in kvm_irqfd_assign() local
335 list_for_each_entry(resampler, in kvm_irqfd_assign()
337 if (resampler->notifier.gsi == irqfd->gsi) { in kvm_irqfd_assign()
338 irqfd->resampler = resampler; in kvm_irqfd_assign()
343 if (!irqfd->resampler) { in kvm_irqfd_assign()
344 resampler = kzalloc(sizeof(*resampler), GFP_KERNEL); in kvm_irqfd_assign()
345 if (!resampler) { in kvm_irqfd_assign()
351 resampler->kvm = kvm; in kvm_irqfd_assign()
352 INIT_LIST_HEAD(&resampler->list); in kvm_irqfd_assign()
353 resampler->notifier.gsi = irqfd->gsi; in kvm_irqfd_assign()
354 resampler->notifier.irq_acked = irqfd_resampler_ack; in kvm_irqfd_assign()
355 INIT_LIST_HEAD(&resampler->link); in kvm_irqfd_assign()
357 list_add(&resampler->link, &kvm->irqfds.resampler_list); in kvm_irqfd_assign()
359 &resampler->notifier); in kvm_irqfd_assign()
360 irqfd->resampler = resampler; in kvm_irqfd_assign()
363 list_add_rcu(&irqfd->resampler_link, &irqfd->resampler->list); in kvm_irqfd_assign()
425 if (irqfd->resampler) in kvm_irqfd_assign()