Hi, Changes from RFC v1: https://lore.kernel.org/qemu-devel/[email protected]/
-Rebased on v6[0] of the "accelerated SMMUv3" series -Addressed feedback on the RFC. Thanks! -Dropped the RFC tag as the accelerated series is now more mature, and once that lands, it makes sense to pick this up as well since it enables the delivery of SMMUv3 events to the guest. When accel=on is enabled for an SMMUv3 instance, the host hardware SMMUv3 may generate Stage-1 (S1) fault or event notifications that are intended for the vIOMMU instance in userspace. This series adds QEMU support for receiving such host events through the vEVENTQ interface and propagating them to the guest. The implementation uses the vEVENTQ support provided by the IOMMUFD subsystem in the kernel. I have lightly this on a Grace platform using some hacks to generate fault events. Further testing and feedback are welcome. Thanks, Shameer [0]https://lore.kernel.org/qemu-devel/[email protected]/ Nicolin Chen (2): backends/iommufd: Introduce iommufd_backend_alloc_veventq hw/arm/smmuv3-accel: Allocate vEVENTQ for accelerated SMMUv3 devices Shameer Kolothum (2): hw/arm/smmuv3: Introduce a helper function for event propagation hw/arm/smmuv3-accel: Read and propagate host vIOMMU events backends/iommufd.c | 31 ++++++++++ backends/trace-events | 1 + hw/arm/smmuv3-accel.c | 120 ++++++++++++++++++++++++++++++++++++++- hw/arm/smmuv3-accel.h | 8 +++ hw/arm/smmuv3-internal.h | 4 ++ hw/arm/smmuv3.c | 25 ++++++-- hw/arm/trace-events | 2 +- include/system/iommufd.h | 12 ++++ 8 files changed, 195 insertions(+), 8 deletions(-) -- 2.43.0
