Searched refs:ioeventfd (Results 1 – 8 of 8) sorted by relevance
| /linux/drivers/vfio/pci/ |
| H A D | vfio_pci_rdwr.c | 379 static void vfio_pci_ioeventfd_do_write(struct vfio_pci_ioeventfd *ioeventfd, in vfio_pci_ioeventfd_do_write() argument 382 switch (ioeventfd->count) { in vfio_pci_ioeventfd_do_write() 384 vfio_pci_core_iowrite8(ioeventfd->vdev, test_mem, in vfio_pci_ioeventfd_do_write() 385 ioeventfd->data, ioeventfd->addr); in vfio_pci_ioeventfd_do_write() 388 vfio_pci_core_iowrite16(ioeventfd->vdev, test_mem, in vfio_pci_ioeventfd_do_write() 389 ioeventfd->data, ioeventfd->addr); in vfio_pci_ioeventfd_do_write() 392 vfio_pci_core_iowrite32(ioeventfd->vdev, test_mem, in vfio_pci_ioeventfd_do_write() 393 ioeventfd->data, ioeventfd->addr); in vfio_pci_ioeventfd_do_write() 396 vfio_pci_core_iowrite64(ioeventfd->vdev, test_mem, in vfio_pci_ioeventfd_do_write() 397 ioeventfd->data, ioeventfd->addr); in vfio_pci_ioeventfd_do_write() [all …]
|
| H A D | vfio_pci_core.c | 593 struct vfio_pci_ioeventfd *ioeventfd, *ioeventfd_tmp; in vfio_pci_core_disable() local 630 list_for_each_entry_safe(ioeventfd, ioeventfd_tmp, in vfio_pci_core_disable() 632 vfio_virqfd_disable(&ioeventfd->virqfd); in vfio_pci_core_disable() 633 list_del(&ioeventfd->next); in vfio_pci_core_disable() 634 kfree(ioeventfd); in vfio_pci_core_disable() 1443 struct vfio_device_ioeventfd ioeventfd; in vfio_pci_ioctl_ioeventfd() local 1446 if (copy_from_user(&ioeventfd, arg, minsz)) in vfio_pci_ioctl_ioeventfd() 1449 if (ioeventfd.argsz < minsz) in vfio_pci_ioctl_ioeventfd() 1452 if (ioeventfd.flags & ~VFIO_DEVICE_IOEVENTFD_SIZE_MASK) in vfio_pci_ioctl_ioeventfd() 1455 count = ioeventfd.flags & VFIO_DEVICE_IOEVENTFD_SIZE_MASK; in vfio_pci_ioctl_ioeventfd() [all …]
|
| /linux/drivers/xen/ |
| H A D | privcmd.c | 1220 struct privcmd_kernel_ioreq *alloc_ioreq(struct privcmd_ioeventfd *ioeventfd) in alloc_ioreq() argument 1231 size = struct_size(kioreq, ports, ioeventfd->vcpus); in alloc_ioreq() 1236 kioreq->dom = ioeventfd->dom; in alloc_ioreq() 1237 kioreq->vcpus = ioeventfd->vcpus; in alloc_ioreq() 1238 kioreq->uioreq = ioeventfd->ioreq; in alloc_ioreq() 1244 vma = find_vma(mm, (unsigned long)ioeventfd->ioreq); in alloc_ioreq() 1256 ports = memdup_array_user(u64_to_user_ptr(ioeventfd->ports), in alloc_ioreq() 1292 get_ioreq(struct privcmd_ioeventfd *ioeventfd, struct eventfd_ctx *eventfd) in get_ioreq() argument 1304 if (kioreq->uioreq != ioeventfd->ioreq) { in get_ioreq() 1306 } else if (kioreq->dom != ioeventfd->dom || in get_ioreq() [all …]
|
| H A D | Kconfig | 277 Using the ioeventfd / irqfd mechanism a virtio backend running in a
|
| /linux/drivers/virt/acrn/ |
| H A D | ioeventfd.c | 53 struct hsm_ioeventfd *ioeventfd) in hsm_ioeventfd_is_conflict() argument 61 if (p->eventfd == ioeventfd->eventfd && in hsm_ioeventfd_is_conflict() 62 p->addr == ioeventfd->addr && in hsm_ioeventfd_is_conflict() 63 p->type == ioeventfd->type && in hsm_ioeventfd_is_conflict() 64 (p->wildcard || ioeventfd->wildcard || in hsm_ioeventfd_is_conflict() 65 p->data == ioeventfd->data)) in hsm_ioeventfd_is_conflict()
|
| H A D | hsm.c | 115 struct acrn_ioeventfd ioeventfd; in acrn_dev_ioctl() local 402 if (copy_from_user(&ioeventfd, (void __user *)ioctl_param, in acrn_dev_ioctl() 403 sizeof(ioeventfd))) in acrn_dev_ioctl() 406 if (ioeventfd.reserved != 0) in acrn_dev_ioctl() 409 ret = acrn_ioeventfd_config(vm, &ioeventfd); in acrn_dev_ioctl()
|
| H A D | Makefile | 3 acrn-y := hsm.o vm.o mm.o ioreq.o ioeventfd.o irqfd.o
|
| /linux/Documentation/virt/kvm/ |
| H A D | api.rst | 2100 This ioctl attaches or detaches an ioeventfd to a legal pio/mmio address 2132 With KVM_CAP_IOEVENTFD_ANY_LENGTH, a zero length ioeventfd is allowed, and 2134 The speedup may only apply to specific architectures, but the ioeventfd will
|