GTX 1060 Passthrough issue


Recommended Posts

Hi Guys,

 

I've been pulling my hair out over this issue, spent countless hours, hoping someone can assist.

 

The Issue is I'm having trouble getting the GPU passthrough to work for my Gigabyte GTX1060 on my KVM Windows 10 64 bit machine, it detects as a Video Controller (VGA Compatible) even after attempting to install drivers.

 

I had a spare GTX760 lying around - If I use my GTX760 - it passes through to the VM with no issues. 

I tried using the exact same configuration I used from the GTX760 (with the exception of changing the video/audio card and VBIOS) in Windows, unfortunately no luck!


 

So back to the GTX1060,

When I attempt to install the driver package from Nvidia, it displays  cannot find the hardware and the installer can't continue.

When I attempt to use the Device manager wizard, it goes through the motions, tries to install the driver then states; 

 

"Windows encountered a problem installing the driver software for your device"

Windows found driver software for your device but encountered an error while attempting to install it
NVIDIA GeForce GTX 1060 3GB

 

After that error, I checked the Windows Event viewer, it displayed the following

Driver Management concluded the process to install driver nv_dispi.inf_amd64_633a9032a4737012\nv_dispi.inf for Device Instance ID PCI\VEN_10DE&DEV_1C02&SUBSYS_37241458&REV_A1\3&13C0B0C5&0&28 with the following status: 0xE0E00030.

There are the following errors in the KVM logs (several repeats of this)

smbus: error: Unexpected recv start condition in state 3
smbus: error: Unexpected read in state -1
smbus: error: Unexpected NACK in state -1
smbus: error: Unexpected NACK in state -1


I'm using the VBIOS via the tech power up website and removed the Nvidia headers using "SpaceInvader One" tutorial from YouTube, I checked the model its 100% the correct VBIOS.

 

As for the troubleshooting I've tried the following

  • Used another PCI-E slot (also tested the same slot I used for the GTX760)
  • I tried both 440fx and Q35 and both BIOS's
  • I also enabled/disabled the hyper-v feature and tried various toggles
  • Tested the GTX1060 card on my other workstation
  • Tested my old graphics card (GTX 760) on the unraid server and was able to passthrough and it worked with no issues.
  • Tested various machine versions
  • Tried the other BIOS

 

Specs

Running UnRAID 6.35

16GB RAM

Running Docker

I've enabled PCIe ACS Override setting

 

Kernel & CPU

Linux UNRAID 4.9.30-unRAID #1 SMP PREEMPT Fri May 26 13:56:36 PDT 2017 x86_64 Intel(R) Core(TM) i5-3570 CPU @ 3.40GHz GenuineIntel GNU/Linux

 

VM configuration

<domain type='kvm'>
  <name>Windows10</name>
  <uuid>4ff24b5b-5220-15bb-3516-3feff7fb6533</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
  </metadata>
  <memory unit='KiB'>4194304</memory>
  <currentMemory unit='KiB'>4194304</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='2'/>
    <vcpupin vcpu='1' cpuset='3'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-i440fx-2.7'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/4ff24b5b-5220-15bb-3516-3feff7fb6533_VARS-pure-efi.fd</nvram>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv>
      <relaxed state='on'/>
      <vapic state='on'/>
      <spinlocks state='on' retries='8191'/>
      <vendor_id state='on' value='none'/>
    </hyperv>
  </features>
  <cpu>
    <topology sockets='1' cores='2' 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/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/KVM/VM/Windows10/vdisk1.img'/>
      <target dev='hdc' bus='virtio'/>
      <boot order='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>
    <controller type='usb' index='0' model='nec-xhci'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'/>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:68:c4:d3'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
      </source>
        <rom file='/mnt/user/KVM/VBIOS/gtx1060.dump'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </memballoon>
  </devices>
</domain>

 

System Devices

PCI Devices and 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.
IOMMU group 0
	[8086:0150] 00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
IOMMU group 1
	[8086:0151] 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
IOMMU group 2
	[8086:0155] 00:01.1 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
IOMMU group 3
	[8086:0152] 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09)
IOMMU group 4
	[8086:1e31] 00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
IOMMU group 5
	[8086:1e3a] 00:16.0 Communication controller: Intel Corporation 7 Series/C216 Chipset Family MEI Controller #1 (rev 04)
IOMMU group 6
	[8086:1503] 00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 04)
IOMMU group 7
	[8086:1e2d] 00:1a.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #2 (rev 04)
IOMMU group 8
	[8086:1e10] 00:1c.0 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 (rev c4)
IOMMU group 9
	[8086:1e14] 00:1c.2 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 3 (rev c4)
IOMMU group 10
	[8086:1e16] 00:1c.3 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 4 (rev c4)
IOMMU group 11
	[8086:244e] 00:1c.4 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c4)
IOMMU group 12
	[8086:1e1e] 00:1c.7 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 8 (rev c4)
IOMMU group 13
	[8086:1e26] 00:1d.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 (rev 04)
IOMMU group 14
	[8086:1e44] 00:1f.0 ISA bridge: Intel Corporation Z77 Express Chipset LPC Controller (rev 04)
	[8086:1e02] 00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
	[8086:1e22] 00:1f.3 SMBus: Intel Corporation 7 Series/C216 Chipset Family SMBus Controller (rev 04)
IOMMU group 15
	[10de:1c02] 01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB] (rev a1)
	[10de:10f1] 01:00.1 Audio device: NVIDIA Corporation GP106 High Definition Audio Controller (rev a1)
IOMMU group 16
	[10de:1187] 02:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 760] (rev a1)
	[10de:0e0a] 02:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)
IOMMU group 17
	[1000:0072] 03:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
IOMMU group 18
	[1b21:1042] 04:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller
IOMMU group 19
	[1b21:0612] 05:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01)
IOMMU group 20
	[1b21:1080] 06:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 03)
IOMMU group 21
	[1b21:1042] 08:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller
CPU Thread Pairings

cpu 0
cpu 1
cpu 2
cpu 3
USB Devices

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 1b1c:1c00 Corsair 
Bus 001 Device 004: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 413c:2003 Dell Computer Corp. Keyboard
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 002: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
SCSI Devices

[0:0:0:0]    disk    SanDisk  Cruzer Blade     1.01  /dev/sda   4.00GB
[1:0:0:0]    disk    ATA      ST3000DM001-1CH1 CC24  /dev/sdb   3.00TB
[1:0:1:0]    disk    ATA      ST3000DM001-1CH1 CC24  /dev/sdc   3.00TB
[1:0:2:0]    disk    ATA      ST3000DM001-1CH1 CC24  /dev/sdd   3.00TB
[1:0:3:0]    disk    ATA      ST3000DM001-1CH1 CC24  /dev/sde   3.00TB
[1:0:4:0]    disk    ATA      ST2000DL003-9VT1 CC32  /dev/sdf   2.00TB
[1:0:5:0]    disk    ATA      ST2000DL003-9VT1 CC32  /dev/sdg   2.00TB
[1:0:6:0]    disk    ATA      ST2000DL003-9VT1 CC32  /dev/sdh   2.00TB
[1:0:7:0]    disk    ATA      ST3000DM001-1CH1 CC27  /dev/sdj   3.00TB
[4:0:0:0]    disk    ATA      ST2000DL003-9VT1 CC32  /dev/sdi   2.00TB
[5:0:0:0]    disk    ATA      ST2000DL003-9VT1 CC32  /dev/sdk   2.00TB
[6:0:0:0]    disk    ATA      ST3000DM001-1CH1 CC27  /dev/sdl   3.00TB
[7:0:0:0]    disk    ATA      ST3000DM001-1ER1 CC25  /dev/sdm   3.00TB
[8:0:0:0]    disk    ATA      ST4000DM000-2AE1 0001  /dev/sdn   4.00TB
[9:0:0:0]    disk    ATA      KINGSTON SV300S3 BBF2  /dev/sdo    480GB

 

Sorry for the lengthy post - If someone could help it would be greatly appreciated!

 

Thanks in advance 

Edited by vincheesel
Attempting to make post clearer
Link to comment

Thanks - yeah, I figured that out while researching more.

 

It ended up being the OS, I did an experiment, It worked fine on Windows 7 with KVM.

I had used an older version of Windows 10 iso, After downloading the Creators Iso and installing, its working fine now.

 

Hope this helps someone

Link to comment
31 minutes ago, vincheesel said:

Thanks - yeah, I figured that out while researching more.

 

It ended up being the OS, I did an experiment, It worked fine on Windows 7 with KVM.

I had used an older version of Windows 10 iso, After downloading the Creators Iso and installing, its working fine now.

 

Hope this helps someone

 

Great!

 

I just did a MB update, and the new MB has no onboard video (well it does, but only if your CPU has the GPU features built in which mine does not). Anyway, I needed to supply a ROM file. I found one of techpowerup, but it was untested. Tried it anyway, and didn't work right. Bottom half of display was fine, but top was all messed up. Wound up pulling my own using GPUZ, which was pretty painless. (Had to strip off the NZB header with HxD as per @gridrunner video). Working great. File was about 250k. This was for a EVGA 1050Ti SC.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.