]> www.infradead.org Git - users/dwmw2/linux.git/commit
KVM: x86/xen: interdomain evtchn support
authorAnkur Arora <ankur.a.arora@oracle.com>
Wed, 28 Nov 2018 20:01:48 +0000 (15:01 -0500)
committerJoao Martins <joao.m.martins@oracle.com>
Wed, 20 Feb 2019 17:30:52 +0000 (12:30 -0500)
commit6530f0e6d135479aeebbcc99b175cb754e4cd08d
treedfbc0d36e35c96cc6c05ee0a1aa5ab1d38ac5fc7
parentd1c8ffefd74d7e213761dea564fc385f78413bac
KVM: x86/xen: interdomain evtchn support

Implement sending events between backend and the guest. To send an
event we mark the event channel pending by setting some bits in the
shared_info and vcpu_info pages and deliver the upcall on the
destination vcpu.

To send an event to dom0, we mark the event channel pending and
send an IPI to the destination vcpu, which would invoke the event
channel upcall handler, which inturn calls the ISR registered by
the backend drivers.

When sending to the guest we fetch the vcpu from the guest, mark the
event channel pending and deliver the interrupt to the guest.

Co-developed-by: Joao Martins <joao.m.martins@oracle.com>
Signed-off-by: Ankur Arora <ankur.a.arora@oracle.com>
Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
arch/x86/kvm/xen.c
include/uapi/linux/kvm.h