之前在 2017 年 5 月,我已经配置了一个带有 radeon 5450 的 gpu passthrought 的虚拟 qemu 机器,它工作正常,除了在第二次启动 VM 后出现内核恐慌(在 VM 上)......
现在我试图用相同的配置重新制作这台机器(只有 1-2 个不同的东西):
- 技嘉GA-990-FXA-ud3
- AMD FX6300
- 第一张显卡:NVidia GT210
- 第二个显卡:AMD Radeon HD5450
- Debian 8
变化自:
- AMD FX8350
- 第一张显卡:NVidia GT710
(我知道它的配置有点过时,但我不是游戏玩家,所以我不需要更多)
我写了这个启动脚本:
#/bin/sh
echo '0000:02:00.1' | tee /sys/bus/pci/devices/0000:02:00.1/driver/unbind
modprobe vfio
modprobe vfio_pci
echo 1002 68f9 | sudo tee /sys/bus/pci/drivers/vfio-pci/new_id
echo 1002 aa68 | sudo tee /sys/bus/pci/drivers/vfio-pci/new_id
qemu-system-x86_64 -M q35 -m 2048 -enable-kvm \
-bios OVMF.fd \
-device ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1 \
-soundhw ac97 \
-hda virtualrawdrive -cdrom ubuntuinstall.iso \
-device piix4-ide,bus=pcie.0,id=piix4-ide -device vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on -device vfio-pci,host=02:00.1,bus=pcie.0 \
-vnc :0
但它不工作,当我启动脚本时,第二个显卡VGA屏幕亮起,显示ubuntu plymouth屏幕,然后什么都没有,屏幕保持不变,但显示黑屏。
我的 lspci -nnk :
[...]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GK208B [GeForce GT 710] [10de:128b] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd GK208B [GeForce GT 710] [1458:36f7]
Kernel driver in use: nvidia
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
01:00.1 Audio device [0403]: NVIDIA Corporation GK208 HDMI/DP Audio Controller [10de:0e0f] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd GK208 HDMI/DP Audio Controller [1458:36f7]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
02:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series] [1002:68f9]
Subsystem: Micro-Star International Co., Ltd. [MSI] Cedar [Radeon HD 5000/6000/7350/8350 Series] [1462:2127]
Kernel driver in use: vfio-pci
Kernel modules: radeon
02:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Cedar HDMI Audio [Radeon HD 5400/6300/7300 Series] [1002:aa68]
Subsystem: Micro-Star International Co., Ltd. [MSI] Cedar HDMI Audio [Radeon HD 5400/6300/7300 Series] [1462:aa68]
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intel
[...]
我之前 2017 年的剧本:
echo '0000:02:00.1' | sudo tee /sys/bus/pci/devices/0000:02:00.1/driver/unbind
modprobe vfio
modprobe vfio_pci
echo 1002 68f9 | sudo tee /sys/bus/pci/drivers/vfio-pci/new_id
echo 1002 aa68 | sudo tee /sys/bus/pci/drivers/vfio-pci/new_id
qemu-system-x86_64 -enable-kvm -M q35 -m 2048 -cpu host -smp 2,sockets=1,cores=2,threads=1 \
-bios /usr/share/qemu/bios.bin \
-vga none -device ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1 \
-device piix4-ide,bus=pcie.0,id=piix4-ide -device vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on -device vfio-pci,host=02:00.1,bus=pcie.0 \
-soundhw ac97 \
-drive file=/home/user/ubuntuimage,id=disk,format=raw,if=none -device ide-hd,bus=piix4-ide.0,drive=disk
我认为问题来自“x-vga=on”选项,但它不适用于新版本,我收到此错误:
qemu-system-x86_64: -device vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio 0000:02:00.0: failed getting region info for VGA region index 8: Invalid argument
device does not support requested feature x-vga
我尝试使用 qemu(4.0.0)和 OVMF(从 GIT 源代码编译)的“新”版本,但它不会改变任何东西......
所以提前感谢你的回答
PS:对不起我的英语不好,我是法国人
根据最后的评论,我已经在模拟显卡中安装了操作系统,然后我从 gpu passtrought 重新启动,一切正常!
我的开始脚本: