March 25, 201610 yr Hi, I am back to unraid_kvm and need some help to make my GT610 work. Some months ago I managed to passthrough an amd r9290 which I have been enjoying untill today (for both my main vm and gaming vm). I recently bought a "cheap" gpu (GT610) to put it in my vm (it should serve as a substitute for my r9290 and main vm). The reason for this is that the performance achieved in my desktop (i52500k oc´d coupled with my r9290) compared to my vm gaming (fx8350 stock also coupled with my r9290) is much better in my dedicated desktop setup. I mean I get more consistent frames playing BF4. Maybe it has to do with the cpu, since my dedicated i52500k oc´d may play a role too. Anyway, my post is to make my GT610 work on my newly created w10 vm. I did create it running Unraid´s 6.1.9 and using the VM menu ("add vm" and custom settings). My GT610 is recognized, also the hdmi. After installing OS, it shows up, but after installing gpu drivers it always reverts to microsoft´s "basic display adapter". I always get this error: Microsoft has stopped this devce because it has reported problems. Code 43. I attach some info: PCI Devices 00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx0 port B) (rev 02) 00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD/ATI] RD990 I/O Memory Management Unit (IOMMU) 00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port B) 00:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port D) 00:0b.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (NB-SB link) 00:0d.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx1 port B) 00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (rev 40) 00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 42) 00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller (rev 40) 00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (rev 40) 00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller 00:15.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0) 00:15.1 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB700/SB800/SB900 PCI to PCI bridge (PCIE port 1) 00:15.3 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB900 PCI to PCI bridge (PCIE port 3) 00:16.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:16.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 0 00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 1 00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 2 00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 3 00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 4 00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 5 01:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 610] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GF119 HDMI Audio Controller (rev a1) 02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03) 05:05.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8169 PCI Gigabit Ethernet Controller (rev 10) 06:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01) 07:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller 08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 09) IOMMU Groups Warning: Your system has booted with the PCIe ACS Override setting enabled. The below list doesn't not reflect the way IOMMU would naturally group devices. To see natural IOMMU groups for your hardware, go to the VM Settings page and set the PCIe ACS Override setting to No. /sys/kernel/iommu_groups/0/devices/0000:00:00.0 /sys/kernel/iommu_groups/1/devices/0000:00:02.0 /sys/kernel/iommu_groups/2/devices/0000:00:04.0 /sys/kernel/iommu_groups/3/devices/0000:00:0b.0 /sys/kernel/iommu_groups/4/devices/0000:00:0d.0 /sys/kernel/iommu_groups/5/devices/0000:00:11.0 /sys/kernel/iommu_groups/6/devices/0000:00:12.0 /sys/kernel/iommu_groups/6/devices/0000:00:12.2 /sys/kernel/iommu_groups/7/devices/0000:00:13.0 /sys/kernel/iommu_groups/7/devices/0000:00:13.2 /sys/kernel/iommu_groups/8/devices/0000:00:14.0 /sys/kernel/iommu_groups/9/devices/0000:00:14.3 /sys/kernel/iommu_groups/10/devices/0000:00:14.4 /sys/kernel/iommu_groups/10/devices/0000:05:05.0 /sys/kernel/iommu_groups/11/devices/0000:00:14.5 /sys/kernel/iommu_groups/12/devices/0000:00:15.0 /sys/kernel/iommu_groups/13/devices/0000:00:15.1 /sys/kernel/iommu_groups/14/devices/0000:00:15.3 /sys/kernel/iommu_groups/15/devices/0000:00:16.0 /sys/kernel/iommu_groups/15/devices/0000:00:16.2 /sys/kernel/iommu_groups/16/devices/0000:01:00.0 /sys/kernel/iommu_groups/16/devices/0000:01:00.1 /sys/kernel/iommu_groups/17/devices/0000:02:00.0 /sys/kernel/iommu_groups/18/devices/0000:06:00.0 /sys/kernel/iommu_groups/19/devices/0000:07:00.0 /sys/kernel/iommu_groups/20/devices/0000:08:00.0 <domain type='kvm' id='1' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> <name>w10main</name> <uuid>2cb0e942-b61a-3404-538a-7904837b05fc</uuid> <metadata> <vmtemplate name="Custom" icon="windows.png" os="windows"/> </metadata> <memory unit='KiB'>5242880</memory> <currentMemory unit='KiB'>5242880</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>4</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0'/> <vcpupin vcpu='1' cpuset='1'/> <vcpupin vcpu='2' cpuset='2'/> <vcpupin vcpu='3' cpuset='3'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type> </os> <features> <acpi/> <apic/> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='4' threads='1'/> </cpu> <clock offset='localtime'> <timer name='rtc' tickpolicy='catchup'/> <timer name='pit' tickpolicy='delay'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/mnt/vm/w10main.qcow2'/> <backingStore/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <alias name='virtio-disk2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/vm'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <boot order='2'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <controller type='usb' index='0'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:2e:57:ec'/> <source bridge='virbr0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/w10main.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='tablet' bus='usb'> <alias name='input0'/> </input> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='5900' autoport='yes' websocket='5700' listen='0.0.0.0' keymap='en-us'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='vmvga' vram='16384' heads='1'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x0603'/> <product id='0x00f2'/> <address bus='2' device='6'/> </source> <alias name='hostdev0'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x046d'/> <product id='0xc05a'/> <address bus='2' device='5'/> </source> <alias name='hostdev1'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.1,bus=root.1,addr=00.1'/> </qemu:commandline> </domain> # Start the Management Utility /usr/local/sbin/emhttp & /usr/local/sbin/vfio-bind 0000:01:00.0 0000:01:00.1 label unRAID OS_version_6.1.9 menu default kernel /bzimage append amd_iommu=on vfio_iommu_type1.allow_unsafe_interrupts=1 pci-stub.ids=10de:104a pci-stub.ids=10de:0e08 pcie_acs_override=downstream initrd=/bzroot I read this: http://lime-technology.com/forum/index.php?topic=47037.15. But before I do anything I would like to hear some suggestions about what I could try. Pls, let me know.
March 25, 201610 yr Did you disable Hyper-V in the VM template? You also need to disable vnc after installing the driver.
March 25, 201610 yr Author Yes and yes. I just "discovered" the advance setup option for vm´s in unraid.
March 25, 201610 yr Author Hi, again voodo magic arrived... Just added an old gpu to my set up and my gt610 did come back to life! I guess the host reclaims it´s dedicated gpu. Thx anyway for support. I also wanted to thank Jonp and his team for this wonderfull vm-GUI, they have managed to make an excellent job for making easy working with vm´s in Unraid. I remember at the beginning not so long ago where everything was made from the command line....than vmmgr....great job guys!
March 26, 201610 yr Author Well, too early for celebrating. After reboot, I discovered the last (old) gpu (my 9800GT) was also bind to vfio. I am surprised since I did a new Unraid install before attempting to setup this new vm with w10 (and my GT610), so it should not be attached to vfio. Anyway, the vm-GUI doesn´t work since when I select my GT610 in the "edit"-option in reallity Unraid is selecting the 9800GT. Any idea how to unbind the 9800GT from vfio? Rgds.
March 29, 201610 yr Author Hi again, everything up and running! I just missed that when I added the 9800gt PCI slot 01:00.0
Archived
This topic is now archived and is closed to further replies.