我的双 XEON 服务器中有 3 个 GPU。
我跟着Arch wiki 上的说明vfio-pci
并设置ids=10de:100c,10de:0e1a
:
$ modprobe -c | grep vfio
options vfio_iommu_type1 allow_unsafe_interrupts=1
options vfio_pci ids=10de:100c,10de:0e1a
...
但根据dmesg
vfio 的说法,忽略了该选项:
[ 1.278976] VFIO - User Level meta-driver version: 0.3
[ 1.306193] vfio_pci: add [1002:7142[ffff:ffff]] class 0x000000/00000000
[ 1.326139] vfio_pci: add [1002:7162[ffff:ffff]] class 0x000000/00000000
此外,当我拔掉板载卡和1002:7142
设备1002:7162
并重新启动时dmesg
,输出中仍然有此类条目,不再有!
我升级了linux内核版本并vfio_pci
开始添加另一张卡但ids
选项仍然独立!
我不知道该怎么做才能解决这个问题。我想设置某些 GPU 作为vfio_pci
设备添加。我什至不知道该去哪里看。
GPU 列表:
#IOMMU group 17
# 02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT [Radeon HD 7970/8970 OEM / R9 280X] [1002 :6798]
# 02:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT HDMI Audio [Radeon HD 7970 Series] [1002:aaa0]
#IOMMU group 18
# 03:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK110B [GeForce GTX TITAN Black] [10de:100c] (rev a1)
# 03:00.1 Audio device [0403]: NVIDIA Corporation GK110 HDMI Audio [10de:0e1a] (rev a1)
#IOMMU group 30
# 83:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] RV515 PRO [Radeon X1300/X1550 Series] [1002:7142]
# 83:00.1 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] RV515 PRO [Radeon X1300/X1550 Series] (Secondary) [1002:7162]
模组探针设置:
$ cat /etc/modprobe.d/vfio.conf
options vfio-pci ids=10de:100c,10de:0e1a
Linux版本:
$ uname -a
Linux localhost 4.4.21-1-lts #1 SMP Thu Sep 15 20:38:36 CEST 2016 x86_64 GNU/Linux
答案1
尝试将其放入 grub :
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt vfio-pci.ids=10de:100c,10de:0e1a"
尝试将其放入 vfio.conf:
#softdep radeon pre: vfio-pci
#softdep amdgpu pre: vfio-pci
softdep snd_hda_intel pre: vfio-pci
softdep nouveau pre: vfio-pci
softdep nvidia pre: vfio-pci
#softdep drm pre: vfio-pci
#softdep xhci_hdc pre: vfio-pci
#options kvm_amd avic=1
然后更新你的启动序列...
sudo update-grub
sudo update-initramfs -u -k all