| /linux/drivers/virt/acrn/ |
| H A D | irqfd.c | 33 struct eventfd_ctx *eventfd; member 55 eventfd_ctx_remove_wait_queue(irqfd->eventfd, &irqfd->wait, &cnt); in hsm_irqfd_shutdown() 56 eventfd_ctx_put(irqfd->eventfd); in hsm_irqfd_shutdown() 110 struct eventfd_ctx *eventfd = NULL; in acrn_irqfd_assign() local 130 eventfd = eventfd_ctx_fileget(fd_file(f)); in acrn_irqfd_assign() 131 if (IS_ERR(eventfd)) { in acrn_irqfd_assign() 132 ret = PTR_ERR(eventfd); in acrn_irqfd_assign() 136 irqfd->eventfd = eventfd; in acrn_irqfd_assign() 147 if (irqfd->eventfd != tmp->eventfd) in acrn_irqfd_assign() 164 eventfd_ctx_put(eventfd); in acrn_irqfd_assign() [all …]
|
| H A D | ioeventfd.c | 29 struct eventfd_ctx *eventfd; member 47 eventfd_ctx_put(p->eventfd); in acrn_ioeventfd_shutdown() 61 if (p->eventfd == ioeventfd->eventfd && in hsm_ioeventfd_is_conflict() 79 struct eventfd_ctx *eventfd; in acrn_ioeventfd_assign() local 95 eventfd = eventfd_ctx_fdget(args->fd); in acrn_ioeventfd_assign() 96 if (IS_ERR(eventfd)) in acrn_ioeventfd_assign() 97 return PTR_ERR(eventfd); in acrn_ioeventfd_assign() 108 p->eventfd = eventfd; in acrn_ioeventfd_assign() 143 eventfd_ctx_put(eventfd); in acrn_ioeventfd_assign() 151 struct eventfd_ctx *eventfd; in acrn_ioeventfd_deassign() local [all …]
|
| /linux/virt/lib/ |
| H A D | irqbypass.c | 94 struct eventfd_ctx *eventfd, int irq) in irq_bypass_register_producer() argument 96 unsigned long index = (unsigned long)eventfd; in irq_bypass_register_producer() 100 if (WARN_ON_ONCE(producer->eventfd)) in irq_bypass_register_producer() 120 producer->eventfd = eventfd; in irq_bypass_register_producer() 135 unsigned long index = (unsigned long)producer->eventfd; in irq_bypass_unregister_producer() 137 if (!producer->eventfd) in irq_bypass_unregister_producer() 146 producer->eventfd = NULL; in irq_bypass_unregister_producer() 159 struct eventfd_ctx *eventfd) in irq_bypass_register_consumer() argument 161 unsigned long index = (unsigned long)eventfd; in irq_bypass_register_consumer() 165 if (WARN_ON_ONCE(consumer->eventfd)) in irq_bypass_register_consumer() [all …]
|
| /linux/virt/kvm/ |
| H A D | eventfd.c | 136 eventfd_ctx_remove_wait_queue(irqfd->eventfd, &irqfd->wait, &cnt); in irqfd_shutdown() 155 eventfd_ctx_put(irqfd->eventfd); in irqfd_shutdown() 220 eventfd_ctx_do_read(irqfd->eventfd, &cnt); in irqfd_wakeup() 373 struct eventfd_ctx *eventfd = NULL, *resamplefd = NULL; in kvm_irqfd_assign() local 402 eventfd = eventfd_ctx_fileget(fd_file(f)); in kvm_irqfd_assign() 403 if (IS_ERR(eventfd)) { in kvm_irqfd_assign() 404 ret = PTR_ERR(eventfd); in kvm_irqfd_assign() 408 irqfd->eventfd = eventfd; in kvm_irqfd_assign() 495 ret = irq_bypass_register_consumer(&irqfd->consumer, irqfd->eventfd); in kvm_irqfd_assign() 498 irqfd->eventfd, ret); in kvm_irqfd_assign() [all …]
|
| H A D | Makefile.kvm | 8 kvm-y := $(KVM)/kvm_main.o $(KVM)/eventfd.o $(KVM)/binary_stats.o
|
| /linux/drivers/hv/ |
| H A D | mshv_eventfd.c | 389 struct eventfd_ctx *eventfd = NULL, *resamplefd = NULL; in mshv_irqfd_assign() local 411 eventfd = eventfd_ctx_fileget(fd_file(f)); in mshv_irqfd_assign() 412 if (IS_ERR(eventfd)) { in mshv_irqfd_assign() 413 ret = PTR_ERR(eventfd); in mshv_irqfd_assign() 417 irqfd->irqfd_eventfd_ctx = eventfd; in mshv_irqfd_assign() 522 if (eventfd && !IS_ERR(eventfd)) in mshv_irqfd_assign() 523 eventfd_ctx_put(eventfd); in mshv_irqfd_assign() 538 struct eventfd_ctx *eventfd; in mshv_irqfd_deassign() local 540 eventfd = eventfd_ctx_fdget(args->fd); in mshv_irqfd_deassign() 541 if (IS_ERR(eventfd)) in mshv_irqfd_deassign() [all …]
|
| H A D | mshv_vtl_main.c | 300 struct eventfd_ctx *eventfd; in mshv_vtl_vmbus_isr() local 317 eventfd = READ_ONCE(flag_eventfds[i]); in mshv_vtl_vmbus_isr() 318 if (eventfd) in mshv_vtl_vmbus_isr() 319 eventfd_signal(eventfd); in mshv_vtl_vmbus_isr() 969 struct eventfd_ctx *eventfd, *old_eventfd; in mshv_vtl_sint_ioctl_set_eventfd() local 976 eventfd = NULL; in mshv_vtl_sint_ioctl_set_eventfd() 978 eventfd = eventfd_ctx_fdget(set_eventfd.fd); in mshv_vtl_sint_ioctl_set_eventfd() 979 if (IS_ERR(eventfd)) in mshv_vtl_sint_ioctl_set_eventfd() 980 return PTR_ERR(eventfd); in mshv_vtl_sint_ioctl_set_eventfd() 985 WRITE_ONCE(flag_eventfds[set_eventfd.flag], eventfd); in mshv_vtl_sint_ioctl_set_eventfd()
|
| /linux/tools/testing/selftests/kvm/ |
| H A D | irqfd_test.c | 28 static void juggle_eventfd_secondary(struct kvm_vm *vm, int eventfd) in juggle_eventfd_secondary() argument 41 r = __kvm_irqfd(vm, GSI_BASE_SECONDARY, eventfd, 0); in juggle_eventfd_secondary() 47 r = __kvm_irqfd(vm, GSI_BASE_SECONDARY + i, eventfd, KVM_IRQFD_FLAG_DEASSIGN); in juggle_eventfd_secondary() 63 static void juggle_eventfd_primary(struct kvm_vm *vm, int eventfd) in juggle_eventfd_primary() argument 72 r1 = __kvm_irqfd(vm, GSI_BASE_PRIMARY, eventfd, 0); in juggle_eventfd_primary() 76 r2 = __kvm_irqfd(vm, GSI_BASE_PRIMARY + 1, eventfd, 0); in juggle_eventfd_primary() 85 kvm_irqfd(vm, GSI_BASE_PRIMARY, eventfd, KVM_IRQFD_FLAG_DEASSIGN); in juggle_eventfd_primary() 86 kvm_irqfd(vm, GSI_BASE_PRIMARY + 1, eventfd, KVM_IRQFD_FLAG_DEASSIGN); in juggle_eventfd_primary()
|
| /linux/drivers/xen/ |
| H A D | privcmd.c | 882 struct eventfd_ctx *eventfd; member 906 eventfd_ctx_remove_wait_queue(kirqfd->eventfd, &kirqfd->wait, &cnt); in irqfd_shutdown() 907 eventfd_ctx_put(kirqfd->eventfd); in irqfd_shutdown() 916 eventfd_ctx_do_read(kirqfd->eventfd, &cnt); in irqfd_inject() 991 kirqfd->eventfd = eventfd_ctx_fileget(fd_file(f)); in privcmd_irqfd_assign() 992 if (IS_ERR(kirqfd->eventfd)) { in privcmd_irqfd_assign() 993 ret = PTR_ERR(kirqfd->eventfd); in privcmd_irqfd_assign() 1007 if (kirqfd->eventfd == tmp->eventfd) { in privcmd_irqfd_assign() 1030 eventfd_ctx_put(kirqfd->eventfd); in privcmd_irqfd_assign() 1040 struct eventfd_ctx *eventfd; in privcmd_irqfd_deassign() local [all …]
|
| /linux/mm/ |
| H A D | memcontrol-v1.c | 46 struct eventfd_ctx *eventfd; member 60 struct eventfd_ctx *eventfd; member 71 struct eventfd_ctx *eventfd, const char *args); 78 struct eventfd_ctx *eventfd); 483 eventfd_signal(t->entries[i].eventfd); in __mem_cgroup_threshold() 495 eventfd_signal(t->entries[i].eventfd); in __mem_cgroup_threshold() 741 eventfd_signal(ev->eventfd); in mem_cgroup_oom_notify_cb() 756 struct eventfd_ctx *eventfd, const char *args, enum res_type type) in __mem_cgroup_usage_register_event() argument 799 new->entries[size - 1].eventfd = eventfd; in __mem_cgroup_usage_register_event() 836 struct eventfd_ctx *eventfd, const char *args) in mem_cgroup_usage_register_event() argument [all …]
|
| H A D | vmpressure.c | 375 struct eventfd_ctx *eventfd, const char *args) in vmpressure_register_event() argument 411 ev->efd = eventfd; in vmpressure_register_event() 436 struct eventfd_ctx *eventfd) in vmpressure_unregister_event() argument 443 if (ev->efd != eventfd) in vmpressure_unregister_event()
|
| /linux/include/linux/ |
| H A D | irqbypass.h | 49 struct eventfd_ctx *eventfd; member 75 struct eventfd_ctx *eventfd; member 87 struct eventfd_ctx *eventfd, int irq); 90 struct eventfd_ctx *eventfd);
|
| H A D | vmpressure.h | 42 struct eventfd_ctx *eventfd, 45 struct eventfd_ctx *eventfd);
|
| H A D | kvm_irqfd.h | 56 struct eventfd_ctx *eventfd; member
|
| /linux/drivers/vfio/ |
| H A D | virqfd.c | 47 eventfd_ctx_do_read(virqfd->eventfd, &cnt); in virqfd_wakeup() 90 eventfd_ctx_remove_wait_queue(virqfd->eventfd, &virqfd->wait, &cnt); in virqfd_shutdown() 92 eventfd_ctx_put(virqfd->eventfd); in virqfd_shutdown() 147 virqfd->eventfd = ctx; in vfio_virqfd_enable()
|
| /linux/drivers/vfio/pci/ |
| H A D | vfio_pci_intrs.c | 741 struct vfio_pci_eventfd *eventfd; in vfio_pci_set_ctx_trigger_single() local 743 eventfd = rcu_dereference_protected(*peventfd, in vfio_pci_set_ctx_trigger_single() 746 if (!eventfd) in vfio_pci_set_ctx_trigger_single() 750 eventfd_signal(eventfd->ctx); in vfio_pci_set_ctx_trigger_single() 764 struct vfio_pci_eventfd *eventfd = in vfio_pci_set_ctx_trigger_single() local 768 if (eventfd) in vfio_pci_set_ctx_trigger_single() 769 eventfd_signal(eventfd->ctx); in vfio_pci_set_ctx_trigger_single()
|
| H A D | vfio_pci_core.c | 47 struct vfio_pci_eventfd *eventfd = in vfio_pci_eventfd_rcu_free() local 50 eventfd_ctx_put(eventfd->ctx); in vfio_pci_eventfd_rcu_free() 51 kfree(eventfd); in vfio_pci_eventfd_rcu_free() 1814 struct vfio_pci_eventfd *eventfd; in vfio_pci_core_request() local 1817 eventfd = rcu_dereference(vdev->req_trigger); in vfio_pci_core_request() 1818 if (eventfd) { in vfio_pci_core_request() 1823 eventfd_signal(eventfd->ctx); in vfio_pci_core_request() 2246 struct vfio_pci_eventfd *eventfd; in vfio_pci_core_aer_err_detected() local 2249 eventfd = rcu_dereference(vdev->err_trigger); in vfio_pci_core_aer_err_detected() 2250 if (eventfd) in vfio_pci_core_aer_err_detected() [all …]
|
| /linux/tools/testing/selftests/kvm/include/ |
| H A D | kvm_util.h | 21 #include <sys/eventfd.h> 538 static inline int __kvm_irqfd(struct kvm_vm *vm, uint32_t gsi, int eventfd, in kvm_assign_irqfd() 542 .fd = eventfd, in kvm_deassign_irqfd() 551 static inline void kvm_irqfd(struct kvm_vm *vm, uint32_t gsi, int eventfd, in kvm_new_eventfd() 554 int ret = __kvm_irqfd(vm, gsi, eventfd, flags); in read_stats_header() 559 static inline void kvm_assign_irqfd(struct kvm_vm *vm, uint32_t gsi, int eventfd) in read_stats_header() 561 kvm_irqfd(vm, gsi, eventfd, 0); in read_stats_header() 564 static inline void kvm_deassign_irqfd(struct kvm_vm *vm, uint32_t gsi, int eventfd) 566 kvm_irqfd(vm, gsi, eventfd, KVM_IRQFD_FLAG_DEASSIGN); 571 int fd = eventfd( in get_stats_descriptor_size() 515 __kvm_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd,uint32_t flags) __kvm_irqfd() argument 528 kvm_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd,uint32_t flags) kvm_irqfd() argument 536 kvm_assign_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd) kvm_assign_irqfd() argument 541 kvm_deassign_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd) kvm_deassign_irqfd() argument [all...] |
| /linux/arch/x86/kvm/ |
| H A D | hyperv.c | 2416 struct eventfd_ctx *eventfd; in kvm_hvcall_signal_event() local 2445 eventfd = idr_find(&hv->conn_to_evt, hc->ingpa); in kvm_hvcall_signal_event() 2447 if (!eventfd) in kvm_hvcall_signal_event() 2450 eventfd_signal(eventfd); in kvm_hvcall_signal_event() 2709 struct eventfd_ctx *eventfd; in kvm_hv_destroy_vm() local 2712 idr_for_each_entry(&hv->conn_to_evt, eventfd, i) in kvm_hv_destroy_vm() 2713 eventfd_ctx_put(eventfd); in kvm_hv_destroy_vm() 2720 struct eventfd_ctx *eventfd; in kvm_hv_eventfd_assign() local 2723 eventfd = eventfd_ctx_fdget(fd); in kvm_hv_eventfd_assign() 2724 if (IS_ERR(eventfd)) in kvm_hv_eventfd_assign() [all …]
|
| H A D | xen.c | 2056 } eventfd; member 2114 struct eventfd_ctx *eventfd = NULL; in kvm_xen_eventfd_assign() local 2134 eventfd = eventfd_ctx_fdget(data->u.evtchn.deliver.eventfd.fd); in kvm_xen_eventfd_assign() 2135 if (IS_ERR(eventfd)) { in kvm_xen_eventfd_assign() 2136 ret = PTR_ERR(eventfd); in kvm_xen_eventfd_assign() 2152 if (eventfd) { in kvm_xen_eventfd_assign() 2153 evtchnfd->deliver.eventfd.ctx = eventfd; in kvm_xen_eventfd_assign() 2175 if (eventfd) in kvm_xen_eventfd_assign() 2176 eventfd_ctx_put(eventfd); in kvm_xen_eventfd_assign() 2195 eventfd_ctx_put(evtchnfd->deliver.eventfd.ctx); in kvm_xen_eventfd_deassign() [all …]
|
| /linux/tools/build/feature/ |
| H A D | test-eventfd.c | 8 return eventfd(0, EFD_NONBLOCK); in main()
|
| /linux/drivers/accel/habanalabs/common/ |
| H A D | habanalabs_ioctl.c | 776 if (hpriv->notifier_event.eventfd) { in eventfd_register() 781 hpriv->notifier_event.eventfd = eventfd_ctx_fdget(args->eventfd); in eventfd_register() 782 if (IS_ERR(hpriv->notifier_event.eventfd)) { in eventfd_register() 783 rc = PTR_ERR(hpriv->notifier_event.eventfd); in eventfd_register() 784 hpriv->notifier_event.eventfd = NULL; in eventfd_register() 796 if (!hpriv->notifier_event.eventfd) { in eventfd_unregister() 801 eventfd_ctx_put(hpriv->notifier_event.eventfd); in eventfd_unregister() 802 hpriv->notifier_event.eventfd = NULL; in eventfd_unregister()
|
| /linux/tools/virtio/ringtest/ |
| H A D | main.c | 302 kickfd = eventfd(0, 0); in main() 304 callfd = eventfd(0, 0); in main()
|
| /linux/samples/cgroup/ |
| H A D | cgroup_event_listener.c | 47 efd = eventfd(0, 0); in main()
|
| /linux/include/uapi/misc/ |
| H A D | ocxl.h | 65 __s32 eventfd; member
|