[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH v3 0/3] Generic PCIe host bridge INTx determination fo
From: |
Eric Auger |
Subject: |
[Qemu-arm] [PATCH v3 0/3] Generic PCIe host bridge INTx determination for INTx routing |
Date: |
Tue, 13 Jun 2017 15:31:14 +0200 |
This series implements INTx to gsi routing for ARM VIRT/GPEX. This is
a respin of [1] which was lost in limbo.
ARM virt uses GPEX PCIe bridge. This latter does not implement INTx
to GSI routing. PCIe/INTx assignment works but the consequence is
irqfd is not used along with INTx interrupts and VFIO INTx handlers
are executed on userspace leading to an important performance degradation.
This issue is witnessed by the following messages;
qemu-system-aarch64: -device vfio-pci,host=0006:90:00.0: PCI: Bug -
unimplemented PCI INTx routing (gpex-pcihost)
qemu-system-aarch64: PCI: Bug - unimplemented PCI INTx routing (gpex-pcihost)
qemu-system-aarch64: PCI: Bug - unimplemented PCI INTx routing (gpex-pcihost)
So with this series, irqfd is set up for PCIe/INTx passthrough and we get
the optimal performance. Also we get rid of the above messages.
This series can be found at:
https://github.com/eauger/qemu/tree/v2.9-gpex-intx-v3
References:
[1] Generic PCIe host bridge INTx determination for INTx routing
https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg04975.html
Pranavkumar Sawargaonkar (3):
hw/pci-host/gpex: Set INTx index/gsi mapping
hw/arm/virt: Set INTx/gsi mapping
hw/pci-host/gpex: Implement PCI INTx routing
hw/arm/virt.c | 4 ++++
hw/pci-host/gpex.c | 22 ++++++++++++++++++++++
include/hw/pci-host/gpex.h | 3 +++
3 files changed, 29 insertions(+)
--
2.5.5
- [Qemu-arm] [PATCH v3 0/3] Generic PCIe host bridge INTx determination for INTx routing,
Eric Auger <=