使用 IOMMU 的 GPU 直通

GPU Passthrough using IOMMU

所以当我尝试隔离我的 nvidia gtx 760

时,我正在尝试在我的 debian(buster) linux 发行版上设置虚拟机

所以我目前遵循了这些步骤

i 运行 "lspci -nnk" anf 得到了我的 GPU 设备 ID

视频:10de:1187

音频:10de:0e0a

然后我去了文件

"/etc/initramfs-tools/modules"

并将其附加到它的末尾

"vfio_pci ids=10de:1187,10de:0e0a"(我后来将它附加到 /etc/default/grub 导致它看起来像这样 "GRUB_CMDLINE_LINUX_DEFAULT="quiet nouvea.modeset=0 iommu=pt intel_iommu=on vfio-pci.ids=10de:1187,10de:0e0a""

然后我运行

"update-initramfs -u"

毕竟 gpu 仍由 "nouveau" 控制,我不知道如何解决它

lspci -nnk

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK104 [GeForce GTX 760] [10de:1187] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd GK104 [GeForce GTX 760] [1458:360b]
Kernel driver in use: nouveau
Kernel modules: nouveau

01:00.1 Audio device [0403]: NVIDIA Corporation GK104 HDMI Audio Controller [10de:0e0a] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd GK104 HDMI Audio Controller [1458:360b]
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intel

/etc/default/grub

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet nouvea.modeset=0 iommu=pt intel_iommu=on vfio-pci.ids=10de:1187,10de:0e0a"
GRUB_CMDLINE_LINUX=""

/etc/modules

vfio
vfio_pci
vfio_iommu_type1
vfio_virqfd

firewire-sbp2

IOMMU 群组

IOMMU Group 1:
    00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port [8086:0151] (rev 09)
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK104 [GeForce GTX 760] [10de:1187] (rev a1)
    01:00.1 Audio device [0403]: NVIDIA Corporation GK104 HDMI Audio Controller [10de:0e0a] (rev a1)

在 运行 grub-install

之后

并且由于某种原因重新启动它运行良好...

我不明白,但我不会抱怨