On Tue, Apr 01, 2025 at 10:22:43AM -0700, Farhan Ali wrote: > Hi, > > Recently on s390x we have enabled mmap support for vfio-pci devices [1].
Hi Alex, I wanted to bring this to your attention. Feel free to merge it through the VFIO tree, otherwise I will merge it once you have taken a look. Thanks, Stefan > This allows us to take advantage and use userspace drivers on s390x. However, > on s390x we have special instructions for MMIO access. Starting with z15 > (and newer platforms) we have new PCI Memory I/O (MIO) instructions which > operate on virtually mapped PCI memory spaces, and can be used from userspace. > On older platforms we would fallback to using existing system calls for MMIO > access. > > This patch series introduces support the PCI MIO instructions, and enables > s390x > support for the userspace NVMe driver on s390x. I would appreciate any > review/feedback > on the patches. > > Thanks > Farhan > > [1] > https://lore.kernel.org/linux-s390/20250226-vfio_pci_mmap-v7-0-c5c0f1d26...@linux.ibm.com/ > > ChangeLog > --------- > v2 series https://mail.gnu.org/archive/html/qemu-devel/2025-03/msg06847.html > v2 -> v3 > - Update the PCI MMIO APIs to reflect that its PCI MMIO access on host > as suggested by Stefan(patch 2) > - Move s390x ifdef check to s390x_pci_mmio.h as suggested by Philippe > (patch 1) > - Add R-bs for the respective patches. > > v1 series https://mail.gnu.org/archive/html/qemu-devel/2025-03/msg06596.html > v1 -> v2 > - Add 8 and 16 bit reads/writes for completeness (patch 1) > - Introduce new QEMU PCI MMIO read/write API as suggested by Stefan > (patch 2) > - Update NVMe userspace driver to use QEMU PCI MMIO functions (patch 3) > > Farhan Ali (3): > util: Add functions for s390x mmio read/write > include: Add a header to define host PCI MMIO functions > block/nvme: Use host PCI MMIO API > > block/nvme.c | 37 +++++---- > include/qemu/host-pci-mmio.h | 116 ++++++++++++++++++++++++++ > include/qemu/s390x_pci_mmio.h | 24 ++++++ > util/meson.build | 2 + > util/s390x_pci_mmio.c | 148 ++++++++++++++++++++++++++++++++++ > 5 files changed, 311 insertions(+), 16 deletions(-) > create mode 100644 include/qemu/host-pci-mmio.h > create mode 100644 include/qemu/s390x_pci_mmio.h > create mode 100644 util/s390x_pci_mmio.c > > -- > 2.43.0 >
signature.asc
Description: PGP signature