Hello, The first patch is a little improvement on how we deal with priorities reserved by the hypervisor. The rest is about activating StoreEOI safely on a host supporting it, P10 hosts are the target but experimental P9 firmwares activate also StoreEOI.
The patchset adds a new KVM device command KVM_DEV_XIVE_GRP_SOURCE_INFO (yet to be sent but nothing really complex) which lets QEMU query the XIVE characteristics of the underlying HW interrupts. It also enforces StoreEOI on P10 compat guests only to make sure that P9 compat guests can not be migrated to a P9 host with StoreEOI activated. Nevertheless, as this is useful, a new Spapr IRQ backend 'xive-storeeoi' allows the user run a P9 compat guest with StoreEOI enabled. Please comment because there might be a better alternative to address these needs. Thanks, C. Cédric Le Goater (8): spapr/xive: Add a 'hv-prio' property to represent the KVM escalation priority linux-headers: Update for KVM_DEV_XIVE_GRP_SOURCE_INFO spapr/xive: Query the characteristics of a source in KVM spapr/xive: Activate StoreEOI for POWER10 only spapr/xive: Enforce the load-after-store ordering spapr/xive: Activate StoreEOI by default spapr/xive: Use the xics flag to check for XIVE-only IRQ backends spapr/xive: Introduce a XIVE StoreEOI IRQ backend include/hw/ppc/spapr_irq.h | 1 + include/hw/ppc/spapr_xive.h | 5 +++ include/hw/ppc/xive.h | 8 +++++ linux-headers/asm-powerpc/kvm.h | 8 +++++ hw/intc/spapr_xive.c | 56 ++++++++++++++++++++++----------- hw/intc/spapr_xive_kvm.c | 38 ++++++++++++++++++++++ hw/intc/xive.c | 6 ++++ hw/ppc/spapr.c | 6 +++- hw/ppc/spapr_irq.c | 36 ++++++++++++++++++++- 9 files changed, 143 insertions(+), 21 deletions(-) -- 2.25.4