]> git.baikalelectronics.ru Git - kernel.git/commit
x86/xen: Add support for HVMOP_set_evtchn_upcall_vector
authorJane Malalane <jane.malalane@citrix.com>
Fri, 29 Jul 2022 07:04:16 +0000 (08:04 +0100)
committerJuergen Gross <jgross@suse.com>
Fri, 12 Aug 2022 09:28:21 +0000 (11:28 +0200)
commit134878b9714d982a8022f91ae3818eecefbacef0
tree108b8bd765f1e0496592013bb988ac329ca19de9
parent86013a65cd535af79eb4244010bc030e2011826a
x86/xen: Add support for HVMOP_set_evtchn_upcall_vector

Implement support for the HVMOP_set_evtchn_upcall_vector hypercall in
order to set the per-vCPU event channel vector callback on Linux and
use it in preference of HVM_PARAM_CALLBACK_IRQ.

If the per-VCPU vector setup is successful on BSP, use this method
for the APs. If not, fallback to the global vector-type callback.

Also register callback_irq at per-vCPU event channel setup to trick
toolstack to think the domain is enlightened.

Suggested-by: "Roger Pau Monné" <roger.pau@citrix.com>
Signed-off-by: Jane Malalane <jane.malalane@citrix.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Link: https://lore.kernel.org/r/20220729070416.23306-1-jane.malalane@citrix.com
Signed-off-by: Juergen Gross <jgross@suse.com>
arch/x86/include/asm/xen/cpuid.h
arch/x86/include/asm/xen/events.h
arch/x86/xen/enlighten.c
arch/x86/xen/enlighten_hvm.c
arch/x86/xen/suspend_hvm.c
drivers/xen/events/events_base.c
include/xen/hvm.h
include/xen/interface/hvm/hvm_op.h