如何在KVM虚拟机(Aarch64)中添加VFIO-IOMMU ?



我正在使用aarch64 Linux测试KVM VM中的VFIO-IOMMU特性。

主机为cortex-A78,运行Linux-5.10.104(启用VFIO_IOMMU)。客户操作系统是Ubuntu-22.04 (Linux-5.15,也启用了VFIO_IOMMU)。

虚拟机是用带有虚拟设备的虚拟机管理器创建的,如网卡,SCSI等。
但是我没有找到在internet上添加VFIO-IOMMU设备到虚拟机的方法。

我尝试在vm.xml中添加以下行,

<iommu model='smmuv3'/>

但是在客户操作系统启动后,我发现了以下关于iommu的日志,但没有关于SMMUv3的日志。

t@t:~$ dmesg | grep -i mmu
[    0.320696] iommu: Default domain type: Translated
[    0.321218] iommu: DMA domain TLB invalidation policy: strict mode

那么在这种情况下如何支持/添加VFIO-IOMMU呢?

qemu-system-aarch64是4.2.1,我不确定它是否能支持ARMv8的smmuv4

我确认QEMU-6.2.0支持SMMUv3。客户机操作系统日志显示如下内容,

[    0.578157] arm-smmu-v3 arm-smmu-v3.0.auto: option mask 0x0
[    0.578841] arm-smmu-v3 arm-smmu-v3.0.auto: ias 44-bit, oas 44-bit (features 0x00008305)
[    0.580289] arm-smmu-v3 arm-smmu-v3.0.auto: allocated 65536 entries for cmdq
[    0.581060] arm-smmu-v3 arm-smmu-v3.0.auto: allocated 128 entries for evtq

相关内容

  • 没有找到相关文章

最新更新