-
- Downloads
virt: acrn: Introduce ioeventfd
ioeventfd is a mechanism to register PIO/MMIO regions to trigger an eventfd signal when written to by a User VM. ACRN userspace can register any arbitrary I/O address with a corresponding eventfd and then pass the eventfd to a specific end-point of interest for handling. Vhost is a kernel-level virtio server which uses eventfd for signalling. To support vhost on ACRN, ioeventfd is introduced in HSM. A new I/O client dedicated to ioeventfd is associated with a User VM during VM creation. HSM provides ioctls to associate an I/O region with a eventfd. The I/O client signals a eventfd once its corresponding I/O region is matched with an I/O request. Cc: Zhi Wang <zhi.a.wang@intel.com> Cc: Zhenyu Wang <zhenyuw@linux.intel.com> Cc: Yu Wang <yu1.wang@intel.com> Cc: Reinette Chatre <reinette.chatre@intel.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by:Zhi Wang <zhi.a.wang@intel.com> Reviewed-by:
Reinette Chatre <reinette.chatre@intel.com> Signed-off-by:
Shuo Liu <shuo.a.liu@intel.com> Link: https://lore.kernel.org/r/20210207031040.49576-16-shuo.a.liu@intel.com Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Showing
- drivers/virt/acrn/Kconfig 1 addition, 0 deletionsdrivers/virt/acrn/Kconfig
- drivers/virt/acrn/Makefile 1 addition, 1 deletiondrivers/virt/acrn/Makefile
- drivers/virt/acrn/acrn_drv.h 10 additions, 0 deletionsdrivers/virt/acrn/acrn_drv.h
- drivers/virt/acrn/hsm.c 11 additions, 0 deletionsdrivers/virt/acrn/hsm.c
- drivers/virt/acrn/ioeventfd.c 273 additions, 0 deletionsdrivers/virt/acrn/ioeventfd.c
- drivers/virt/acrn/vm.c 2 additions, 0 deletionsdrivers/virt/acrn/vm.c
- include/uapi/linux/acrn.h 29 additions, 0 deletionsinclude/uapi/linux/acrn.h
Loading
Please register or sign in to comment