[PATCH 0/8] spapr/xive: Activate StoreEOI in P10 compat guests

Cédric Le Goater posted 8 patches 3 years, 9 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
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(-)
[PATCH 0/8] spapr/xive: Activate StoreEOI in P10 compat guests
Posted by Cédric Le Goater 3 years, 9 months ago
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