Hello, The follow patch series is a very initial implementation of the extended destination ID for vIO-APIC and vMSI for HVM/PVH guests. This is already supported by QEMU/KVM and HyperV in order to target APIC IDs for device interrupts up to 32768 without the need of interrupt remapping.
Note the feature is only exposed to guests with vPCI at the moment (see patch 2 for the details). In practice this means it's only exposed to a PVH dom0, and the maximum vCPU count for HVM/PVH is still not increased, as that would also require some changes to QEMU and the ACPI tables for domUs (both HVM and PVH). Thanks, Roger. Roger Pau Monne (3): xen/vioapic: add support for the extended destination ID field x86/vmsi: add support for extended destination ID in address field HACK: allow adding an offset to the x2APIC ID xen/arch/x86/cpuid.c | 12 +++++++++++- xen/arch/x86/hvm/dom0_build.c | 3 ++- xen/arch/x86/hvm/irq.c | 3 ++- xen/arch/x86/hvm/vioapic.c | 3 ++- xen/arch/x86/hvm/vlapic.c | 14 ++++++++++++-- xen/arch/x86/hvm/vmsi.c | 13 ++++++++++--- xen/arch/x86/include/asm/hvm/hvm.h | 5 +++-- xen/arch/x86/include/asm/hvm/vlapic.h | 2 ++ xen/arch/x86/include/asm/msi.h | 1 + xen/arch/x86/traps.c | 3 +++ xen/drivers/passthrough/x86/hvm.c | 10 +++++++--- xen/include/public/arch-x86/cpuid.h | 6 ++++++ xen/include/public/arch-x86/hvm/save.h | 4 +++- xen/include/public/domctl.h | 1 + 14 files changed, 65 insertions(+), 15 deletions(-) -- 2.34.1
