Hallo,
ich versuche seit einigen Tagen meine Nvidia Grafikkarte GTX 680 an meine Windows Maschine "weiterzureichen", leider vergeblich.
Ich habe Windows 8.1 und Windows 10 getestet. Beide lassen sich problemlos installieren und funktionieren an sich auch ohne weitere Probleme. Auch die Nvidia Treiber lassen sich ohne weitere Probleme installieren und die Grafikkarte wird im Gerätemanager erkannt, aber mit einem gelben Ausrufezeichen.
VT-d wurde im Bios aktiviert. Die Grub Config bzw. das initrd Image wurde auch aktualisiert, nachdem an den Configs unten etwas geändert wurde.
Schon mal vielen Dank für Hilfe im Vorraus 🙂
Hier mal alle Infos zur Konfiguration usw..
Grafikkarte: Asus Nvidia GTX 680
CPU: i7-6700K
Mainboard: Asus Z170-A
/etc/mkinitcpio.conf:
...
MODULES="vfio vfio_iommu_type1 vfio_pci vfio_virqfd"
...
/etc/default/grub:
GRUB_CMDLINE_LINUX_DEFAULT="... intel_iommu=on intel_iommu=verbose"
Vor einiger Zeit habe ich schon einmal an einem anderem Rechner mit VT-d etwas herummgespielt. Ich meine da habe ich auch die eine oder andere auskommentierte Option (siehe unten) verwendet. Kann es an einen von denen liegen? Ich habe jede einzelne aber auch schon durchprobiert.
/etc/modprobe.d/vfio.conf:
options vfio-pci ids=10de:1180,10de:0e0a
# options kvm ignore_msrs=1 allow_unsafe_assigned_interrupts=1
# options vfio_iommu_type1 allow_unsafe_interrupts=1
# options kvm_intel emulate_invalid_guest_state=0
Windows wurde mit folgendem Skript installiert.
#!/bin/bash
if [[ $EUID -ne 0 ]]
then
echo "This script must be run as root"
exit 1
fi
echo "Unbinding devices from host"
for dev in "0000:01:00.0" "0000:01:00.1"; do
vendor=$(cat /sys/bus/pci/devices/${dev}/vendor)
device=$(cat /sys/bus/pci/devices/${dev}/device)
if [ -e /sys/bus/pci/devices/${dev}/driver ]; then
echo "${dev}" | sudo /usr/bin/tee /sys/bus/pci/devices/${dev}/driver/unbind > /dev/null
while [ -e /sys/bus/pci/devices/${dev}/driver ]; do
sleep 0.1
done
fi
echo "${vendor} ${device}" | sudo tee /sys/bus/pci/drivers/vfio-pci/new_id > /dev/null
done
echo "Starting virtual machine"
export QEMU_AUDIO_DRV=pa
qemu-system-x86_64 \
-serial none \
-parallel none \
-nodefaults \
-nodefconfig \
-enable-kvm \
-daemonize \
-name windumm \
-rtc base=localtime,clock=host,driftfix=none \
-machine pc,accel=kvm,check \
-smp sockets=1,cores=4,threads=2 \
-m 8192 \
-mem-prealloc \
-soundhw hda \
-monitor unix:/run/windumm.sock,server,nowait \
-device virtio-balloon-pci,id=balloon0,bus=pci.0 \
-device ich9-usb-uhci3,id=uhci \
-device virtio-scsi-pci,id=scsi \
-device scsi-hd,drive=hd \
-drive if=none,id=hd,file=/dev/mapper/windumm,format=raw,cache=none,aio=native \
-drive if=pflash,format=raw,readonly,file=/root/windumm_ovmf_code.fd \
-drive if=pflash,format=raw,file=/root/windumm_ovmf_vars.fd \
-net nic,vlan=0,macaddr=52:54:00:00:00:01,model=e1000,name=net0 \
-net bridge,vlan=0,name=bridge0,br=br0 \
-device vfio-pci,host=01:00.0,addr=0xa,multifunction=on \
-device vfio-pci,host=01:00.1,addr=0xb \
-usbdevice host:15d9:0a33 \
-vga std \
-display sdl \
-usbdevice tablet