KVM PCI 直通## 1. 通过编辑 grub 配置文件启用 IOMMU。对于 Intel,引导计算机,并将intel_iommu=on附加到 grub 配置文件中GRUB_CMDLINE_LINUX行的末尾。```¶
vi /etc/default/grub ... GRUB_CMDLINE_LINUX="nofb splash=quiet console=tty0 ... intel_iommu=on ...
对于 AMD,引导计算机,并将`amd_iommu=on`附加到 grub 配置文件中`GRUB_CMDLINE_LINUX`行的末尾。```
vi /etc/default/grub
...
GRUB_CMDLINE_LINUX="nofb splash=quiet console=tty0 ... amd_iommu=on
...
2. 刷新 grub.cfg 文件并重新引导主机以使这些更改生效:```¶
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
10de:11fa:设备总线id,可以通过
lspci -Dnn获取
4. 可选:函数透传如果某些 GPU 功能(例如音频)由于支持限制而无法传递到 VM,您可以修改 IOMMU 组内端点的驱动程序绑定,以仅传递必要的 GPU 功能。¶
- 将 GPU 设置转换为 XML,并记下要阻止连接到主机驱动程序的端点的 PCI 地址。
- 防止端点连接到主机驱动程序。-
driverctl set-override 0000:02:00.1 vfio-pci
参考文献[1]. https://access.redhat.com/documentation/en-us/red_hat_virtualization/4.0/html/installation_guide/appe-configuring_a_hypervisor_host_for_pci_passthrough#Enabling_IOMMU_Manually¶
[2]. https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/configuring_and_managing_virtualization/assembly_managing-gpu-devices-in-virtual-machines_configuring-and-managing-virtualization#proc_assigning-a-gpu-to-a-virtual-machine_assembly_managing-gpu-devices-in-virtual-machines
[3]. 命令行安装KVM虚拟化系统