On Sat, 2026-10-17 at 22:39 +0800, Tan Chi wrote:
> This series changes selective IOTINVAL handling to remove matching
> entries
> from the IOATC instead of leaving them in the hash table with
> IOMMU_NONE.
>
> Patch 1 adds explicit serialization for IOATC accesses, providing the
> entry lifetime protection needed before entries can be removed.
>
> Patch 2 changes selective invalidation to remove matching entries.
> This
> avoids repeatedly scanning invalid entries and prevents them from
> contributing to the IOATC size limit.
>
> The performance measurements are included in patch 2.
>
> v2:
> - Split the IOATC locking and invalidation changes into separate
> patches.
> - Reduce the scope of iot_lock in the translation path.
>
> v1:
> https://lists.nongnu.org/archive/html/qemu-devel/2026-10/msg01606.html
>
> Tan Chi (2):
> hw/riscv/riscv-iommu: serialize IOATC accesses
> hw/riscv/riscv-iommu: reclaim invalidated IOATC entries
Thanks!
Applied to riscv-to-apply.next
Alistair
>
> hw/riscv/riscv-iommu.c | 173 ++++++++++++++++++++-------------------
> --
> hw/riscv/riscv-iommu.h | 1 +
> 2 files changed, 87 insertions(+), 87 deletions(-)