[PATCH 0/2] Add ioeventfd and irqfd support for vhm


Shuo A Liu
 

To support vhost, we need implement call eventfd and notify eventfd in
kernel for it. For ACRN vhm, we implement ioeventfd and irqfd for that.

ioeventfd which is based on eventfd, intends to glue vhm module and
other modules who are interested in guest IOs.
Each ioeventfd registered by userspace can map a PIO/MMIO range of
the guest to eventfd, and response to signal the eventfd when get the
in-range IO write from guest. Then the other side of eventfd can be
notified to process the IO request.

irqfd is based on eventfd too, provides a pipe for injecting guest
interrupt through a file description writing operation.
Each irqfd registered by userspace can map a interrupt of the guest
to eventfd, and a writing operation on one side of the eventfd will
trigger the interrupt injection on vhm side.


Shuo Liu (2):
vhm: add ioeventfd support for ACRN hypervisor service module
vhm: add irqfd support for ACRN hypervisor service module

drivers/char/vhm/vhm_dev.c | 26 +++
drivers/vhm/Makefile | 2 +-
drivers/vhm/vhm_ioeventfd.c | 412 +++++++++++++++++++++++++++++++++++++
drivers/vhm/vhm_irqfd.c | 320 ++++++++++++++++++++++++++++
include/linux/vhm/vhm_eventfd.h | 16 ++
include/linux/vhm/vhm_ioctl_defs.h | 22 ++
6 files changed, 797 insertions(+), 1 deletion(-)
create mode 100644 drivers/vhm/vhm_ioeventfd.c
create mode 100644 drivers/vhm/vhm_irqfd.c
create mode 100644 include/linux/vhm/vhm_eventfd.h

--
2.8.3

Join acrn-dev@lists.projectacrn.org to automatically receive all group messages.