mbox series

[v3,0/5] Interrupt Remap support for emulated amd viommu

Message ID 20240927172913.121477-1-santosh.shukla@amd.com (mailing list archive)
Headers show
Series Interrupt Remap support for emulated amd viommu | expand

Message

Santosh Shukla Sept. 27, 2024, 5:29 p.m. UTC
Series adds following feature support for emulated amd vIOMMU
1) Pass Through(PT) mode
2) Interrupt Remapping(IR) mode

1) PT mode
Introducing the shared 'nodma' memory region that can be aliased
by all the devices in the PT mode. Shared memory with aliasing
approach will help run VM faster when lot of devices attached to
VM.

2) IR mode
Shared IR memory region with aliasing approach proposed for the
reason mentioned in 1). Also add support to invalidate Interrupt
remaping table(IRT).

Series based on e10cd93872c31332b002c933a798ab0bc51705a4

Testing:
1. nvme/fio testing for VM with > 255 vCPU with xtsup=on and x2apic
enabled
2. Windows Server 2022 VM testing for > 255 vCPU.

Change History:

v3:
- Incorporated Alejandro's v2 nits comment.

V2:
- https://lore.kernel.org/qemu-devel/20240916143116.169693-1-santosh.shukla@amd.com/

V1:
- https://lore.kernel.org/all/20240904100257.184851-3-santosh.shukla@amd.com/T/

Suravee Suthikulpanit (5):
  amd_iommu: Rename variable mmio to mr_mmio
  amd_iommu: Add support for pass though mode
  amd_iommu: Use shared memory region for Interrupt Remapping
  amd_iommu: Send notification when invalidate interrupt entry cache
  amd_iommu: Check APIC ID > 255 for XTSup

 hw/i386/acpi-build.c |  4 +-
 hw/i386/amd_iommu.c  | 98 +++++++++++++++++++++++++++++++++++---------
 hw/i386/amd_iommu.h  |  5 ++-
 3 files changed, 85 insertions(+), 22 deletions(-)