On 14/04/2022 22:41, Cédric Le Goater wrote:

After re-reading what I just wrote, I am leaning towards disabling use of KVM_CAP_IRQFD_RESAMPLE as it seems last worked on POWER8 and never since :)

Did I miss something in the picture (hey Cedric)?

How about disabling it like this?

=====
diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c
index 5bfd4aa9e5aa..c999f7b1ab1b 100644
--- a/hw/ppc/spapr_pci.c
+++ b/hw/ppc/spapr_pci.c
@@ -732,7 +732,7 @@ static PCIINTxRoute spapr_route_intx_pin_to_irq(void *opaque, int pin)
      SpaprPhbState *sphb = SPAPR_PCI_HOST_BRIDGE(opaque);
      PCIINTxRoute route;

-    route.mode = PCI_INTX_ENABLED;
+    route.mode = PCI_INTX_DISABLED;

=====

I like it.


The only thing is that this resampling works on POWER8/XICS and removing it there is not great. So far sPAPR PHB was unaware of underlying interrupt controller, or was not it?



You now know how to test all the combinations :) Prepare your matrix,
variables are :

  * Host OS        POWER8, POWER9+
  * KVM device        XICS (P8), XICS-on-XIVE (P9), XIVE-on-XIVE (P9)
  * kernel_irqchip    off, on
  * ic-mode        xics, xive
  * Guest OS        msi or nomsi

Ideally you should check TCG, but that's like kernel_irqchip=off.

Cheers,

C.


(btw what the heck is PCI_INTX_INVERTED for?)


--
Alexey



--
Alexey

Reply via email to