qemu-kvm Windows 7 GUEST с vga passthrough не работает

qemu-kvm Windows 7 GUEST с vga passthrough не работает

Итак, у меня есть настройка qemu-kvm Win7 VM. При настройке на использование стандартного вывода vga "-vga std" все работает нормально. Windows загружается, отображается, никаких проблем. Если я настрою

-vga none \
-device vfio-pci,host=06:00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=06:00.1 \

VM все еще запускается, не выдает ошибок ни в консоли монитора qemu, ни в терминале, используемом для запуска скрипта запуска. Монитор, подключенный к графической карте PCIE на pci_0000:06:00:0, регистрирует сигнал, на секунду показывает экран BIOS, но как только он начинает загружать Windows (либо установочный диск iso, либо предустановленную копию, уже находящуюся на диске VM), он просто показывает пустой черный экран.

Опять же, никаких ошибок, никаких визуальных артефактов, экран все еще регистрирует сигнал (не переходит по умолчанию в состояние «Нет сигнала» и не отключается), но он просто черный. Насколько я могу судить, сама ОС на самом деле не загружается (у меня установлена ​​synergy и настроена на автоматический запуск при запуске компьютера. Если не используется vga passthrough, synergy запускается, как и ожидалось, с нулевым вводом в поле VM. При использовании vga passthrough моя мышь не может прокручивать за пределы экрана из хостовой/серверной ОС, а консоль сервера synergy никогда не показывает, что клиент устанавливает/пытается установить соединение.

ОС: Fedora 21 QEMU/QEMU-KVM: Версия 2:2.3.0-4 Гостевая ОС: Windows 7 Enterprise libvirt-kvm: Версия 1.2.13.101 Версия ядра: 4.0.4-201

Скрипт запуска:

#!/bin/bash
sudo qemu-system-x86_64 -enable-kvm -rtc base=localtime -m 8192 -cpu host,hv-time,kvm=off \
-smp sockets=1,cores=4,threads=1 -serial none -parallel none -nodefconfig \
-drive file=windows.img,cache=writeback,if=none,id=drive0,aio=native,cache.direct=on \
-device virtio-blk-pci,drive=drive0,ioeventfd=on,bootindex=1 -device virtio-scsi-pci,id=scsi \
-drive file=7_en_x64.iso,id=iso_install,if=none -device scsi-cd,drive=iso_install \
-cdrom virtio.iso \
-device vfio-pci,host=06:00.0,multifunction=on,x-vga=on \
-device vfio-pci,host=06:00.1 \
-boot menu=on \
-vga none


exit 0

Закомментировав последние две строки «-device» и изменив «-vga none» на «-vga std», виртуальная машина загрузится и будет работать так, как и ожидалось.

Связанный контент