Home
last modified time | relevance | path

Searched refs:eventfd (Results 1 – 25 of 73) sorted by relevance

123

/linux/drivers/virt/acrn/
H A Dirqfd.c33 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 Dioeventfd.c29 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 Dirqbypass.c94 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 Deventfd.c136 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 DMakefile.kvm8 kvm-y := $(KVM)/kvm_main.o $(KVM)/eventfd.o $(KVM)/binary_stats.o
/linux/drivers/hv/
H A Dmshv_eventfd.c389 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 Dmshv_vtl_main.c300 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 Dirqfd_test.c28 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 Dprivcmd.c882 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 Dmemcontrol-v1.c46 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 Dvmpressure.c375 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 Dirqbypass.h49 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 Dvmpressure.h42 struct eventfd_ctx *eventfd,
45 struct eventfd_ctx *eventfd);
H A Dkvm_irqfd.h56 struct eventfd_ctx *eventfd; member
/linux/drivers/vfio/
H A Dvirqfd.c47 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 Dvfio_pci_intrs.c741 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 Dvfio_pci_core.c47 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 Dkvm_util.h21 #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 Dhyperv.c2416 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 Dxen.c2056 } 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 Dtest-eventfd.c8 return eventfd(0, EFD_NONBLOCK); in main()
/linux/drivers/accel/habanalabs/common/
H A Dhabanalabs_ioctl.c776 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 Dmain.c302 kickfd = eventfd(0, 0); in main()
304 callfd = eventfd(0, 0); in main()
/linux/samples/cgroup/
H A Dcgroup_event_listener.c47 efd = eventfd(0, 0); in main()
/linux/include/uapi/misc/
H A Docxl.h65 __s32 eventfd; member

123