Searched refs:irqfd (Results 1 – 8 of 8) sorted by relevance
| /Linux-v5.10/virt/kvm/ |
| D | eventfd.c | 44 struct kvm_kernel_irqfd *irqfd = in irqfd_inject() local 46 struct kvm *kvm = irqfd->kvm; in irqfd_inject() 48 if (!irqfd->resampler) { in irqfd_inject() 49 kvm_set_irq(kvm, KVM_USERSPACE_IRQ_SOURCE_ID, irqfd->gsi, 1, in irqfd_inject() 51 kvm_set_irq(kvm, KVM_USERSPACE_IRQ_SOURCE_ID, irqfd->gsi, 0, in irqfd_inject() 55 irqfd->gsi, 1, false); in irqfd_inject() 68 struct kvm_kernel_irqfd *irqfd; in irqfd_resampler_ack() local 80 list_for_each_entry_rcu(irqfd, &resampler->list, resampler_link) in irqfd_resampler_ack() 81 eventfd_signal(irqfd->resamplefd, 1); in irqfd_resampler_ack() 87 irqfd_resampler_shutdown(struct kvm_kernel_irqfd *irqfd) in irqfd_resampler_shutdown() argument [all …]
|
| /Linux-v5.10/drivers/vfio/ |
| D | virqfd.c | 109 struct fd irqfd; in vfio_virqfd_enable() local 128 irqfd = fdget(fd); in vfio_virqfd_enable() 129 if (!irqfd.file) { in vfio_virqfd_enable() 134 ctx = eventfd_ctx_fileget(irqfd.file); in vfio_virqfd_enable() 166 events = vfs_poll(irqfd.file, &virqfd->pt); in vfio_virqfd_enable() 181 fdput(irqfd); in vfio_virqfd_enable() 187 fdput(irqfd); in vfio_virqfd_enable()
|
| /Linux-v5.10/arch/arm64/kvm/ |
| D | arm.c | 1704 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_add_producer() local 1707 return kvm_vgic_v4_set_forwarding(irqfd->kvm, prod->irq, in kvm_arch_irq_bypass_add_producer() 1708 &irqfd->irq_entry); in kvm_arch_irq_bypass_add_producer() 1713 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_del_producer() local 1716 kvm_vgic_v4_unset_forwarding(irqfd->kvm, prod->irq, in kvm_arch_irq_bypass_del_producer() 1717 &irqfd->irq_entry); in kvm_arch_irq_bypass_del_producer() 1722 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_stop() local 1725 kvm_arm_halt_guest(irqfd->kvm); in kvm_arch_irq_bypass_stop() 1730 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_start() local 1733 kvm_arm_resume_guest(irqfd->kvm); in kvm_arch_irq_bypass_start()
|
| D | Makefile | 21 vgic/vgic-irqfd.o vgic/vgic-v2.o \
|
| /Linux-v5.10/arch/powerpc/kvm/ |
| D | book3s_hv.c | 5224 struct kvm_kernel_irqfd *irqfd = in kvmppc_irq_bypass_add_producer_hv() local 5227 irqfd->producer = prod; in kvmppc_irq_bypass_add_producer_hv() 5229 ret = kvmppc_set_passthru_irq(irqfd->kvm, prod->irq, irqfd->gsi); in kvmppc_irq_bypass_add_producer_hv() 5232 prod->irq, irqfd->gsi, ret); in kvmppc_irq_bypass_add_producer_hv() 5241 struct kvm_kernel_irqfd *irqfd = in kvmppc_irq_bypass_del_producer_hv() local 5244 irqfd->producer = NULL; in kvmppc_irq_bypass_del_producer_hv() 5251 ret = kvmppc_clr_passthru_irq(irqfd->kvm, prod->irq, irqfd->gsi); in kvmppc_irq_bypass_del_producer_hv() 5254 prod->irq, irqfd->gsi, ret); in kvmppc_irq_bypass_del_producer_hv()
|
| D | powerpc.c | 841 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_add_producer() local 843 struct kvm *kvm = irqfd->kvm; in kvm_arch_irq_bypass_add_producer() 854 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_del_producer() local 856 struct kvm *kvm = irqfd->kvm; in kvm_arch_irq_bypass_del_producer()
|
| /Linux-v5.10/arch/x86/kvm/ |
| D | x86.c | 11055 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_add_producer() local 11059 irqfd->producer = prod; in kvm_arch_irq_bypass_add_producer() 11060 kvm_arch_start_assignment(irqfd->kvm); in kvm_arch_irq_bypass_add_producer() 11061 ret = kvm_x86_ops.update_pi_irte(irqfd->kvm, in kvm_arch_irq_bypass_add_producer() 11062 prod->irq, irqfd->gsi, 1); in kvm_arch_irq_bypass_add_producer() 11065 kvm_arch_end_assignment(irqfd->kvm); in kvm_arch_irq_bypass_add_producer() 11074 struct kvm_kernel_irqfd *irqfd = in kvm_arch_irq_bypass_del_producer() local 11077 WARN_ON(irqfd->producer != prod); in kvm_arch_irq_bypass_del_producer() 11078 irqfd->producer = NULL; in kvm_arch_irq_bypass_del_producer() 11086 ret = kvm_x86_ops.update_pi_irte(irqfd->kvm, prod->irq, irqfd->gsi, 0); in kvm_arch_irq_bypass_del_producer() [all …]
|
| /Linux-v5.10/Documentation/virt/kvm/ |
| D | api.rst | 2798 the guest using the specified gsi pin. The irqfd is removed using 2803 mechanism allowing emulation of level-triggered, irqfd-based 2812 irqfd. The KVM_IRQFD_FLAG_RESAMPLE is only necessary on assignment
|