Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

VM GPU not displaying anything

Featured Replies

I am trying to get a GeForce GTX 750 Ti to do passthrough on a Windows 10 VM. Using the VNC works fine but when I use the GPU I see nothing but a blank screen.

1.PNG.55d38000abef039d19dfddc5394b912e.PNG

I am using the GPU as both the soundcard and GPU.

 

IOMMU: Enabled

 

>Nothing extra is in the IOMMU group:

IOMMU group 38:    [10de:1380] 42:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2)
[10de:0fbc] 42:00.1 Audio device: NVIDIA Corporation GM107 High Definition Audio Controller [GeForce 940MX] (rev a1)

 

I also tried some tricks from Spaceinvader One to include editing the xml file.

<driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x42' slot='0x00' function='0x0'/>
      </source>
      <rom file='/mnt/user/VMs/Vbios/NVIDIAGTX750Ti1536'/>
      <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='0x42' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </hostdev>

 

Here are the logs I get when booting up:

Aug 1 19:47:04 Media01 kernel: vfio-pci 0000:42:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
Aug 1 19:47:04 Media01 kernel: br0: port 2(vnet0) entered blocking state
Aug 1 19:47:04 Media01 kernel: br0: port 2(vnet0) entered disabled state
Aug 1 19:47:04 Media01 kernel: device vnet0 entered promiscuous mode
Aug 1 19:47:04 Media01 kernel: br0: port 2(vnet0) entered blocking state
Aug 1 19:47:04 Media01 kernel: br0: port 2(vnet0) entered forwarding state
Aug 1 19:47:05 Media01 avahi-daemon[5639]: Joining mDNS multicast group on interface vnet0.IPv6 with address fe80::fc54:ff:fe5d:28ed.
Aug 1 19:47:05 Media01 avahi-daemon[5639]: New relevant interface vnet0.IPv6 for mDNS.
Aug 1 19:47:05 Media01 avahi-daemon[5639]: Registering new address record for fe80::fc54:ff:fe5d:28ed on vnet0.*.
Aug 1 19:47:07 Media01 kernel: vfio_ecap_init: 0000:42:00.0 hiding ecap 0x1e@0x258
Aug 1 19:47:07 Media01 kernel: vfio_ecap_init: 0000:42:00.0 hiding ecap 0x19@0x900
Aug 1 19:47:07 Media01 acpid: input device has been disconnected, fd 5

 

I am not seeing any other logs to give me any clues.

 

2.thumb.png.d128d7b6b8df75dc852985a9da7a8743.png

 

I also tested/swapped cables. 

To check for video I have a monitor plugged directly in AND am using Splashtop that was confirmed working when I use VNC.

 

At this point I think I am missing the obvious and if so I clearly am not seeing it. 

 

I thank you for taking the time to read this and look forward to any help offered.

Edited by Gobananas

  • Author

Bump ^ Anyone have any ideas or thoughts?

i do have the same card. and working on amd tho. 

 

btw, i dumped and hex edited the rom file

 

 

here's my xml

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>MEDIA-WIN10VM</name>
  <uuid>xxxxxxxxxxxxxxxxdeletedxxxxxxxxxxxxxxxxxxxxxxx</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>12</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='10'/>
    <vcpupin vcpu='1' cpuset='26'/>
    <vcpupin vcpu='2' cpuset='11'/>
    <vcpupin vcpu='3' cpuset='27'/>
    <vcpupin vcpu='4' cpuset='12'/>
    <vcpupin vcpu='5' cpuset='28'/>
    <vcpupin vcpu='6' cpuset='13'/>
    <vcpupin vcpu='7' cpuset='29'/>
    <vcpupin vcpu='8' cpuset='14'/>
    <vcpupin vcpu='9' cpuset='30'/>
    <vcpupin vcpu='10' cpuset='15'/>
    <vcpupin vcpu='11' cpuset='31'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-5.0'>hvm</type>
    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/98a0afe9-b3c1-d815-3c0a-abe51aed678d_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='1234567890ab'/>
    </hyperv>
    <kvm>
      <hidden state='on'/>
    </kvm>
    <vmport state='off'/>
    <ioapic driver='kvm'/>
  </features>
  <cpu mode='host-passthrough' check='none'>
    <topology sockets='1' dies='1' cores='6' threads='2'/>
    <cache mode='passthrough'/>
    <feature policy='require' name='topoext'/>
  </cpu>
  <clock offset='localtime'>
    <timer name='hypervclock' present='yes'/>
    <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/domains/MEDIA-WIN10VM/vdisk1.img'/>
      <target dev='hdc' bus='virtio'/>
      <boot order='1'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </disk>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/mnt/user/isos/virtio-win-0.1.173-2.iso'/>
      <target dev='hdb' bus='sata'/>
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='1'/>
    </disk>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0xe'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x6'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0x9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0xa'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='5' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='5' port='0xb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/>
    </controller>
    <controller type='pci' index='6' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='6' port='0xc'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/>
    </controller>
    <controller type='pci' index='7' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='7' port='0xd'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x5'/>
    </controller>
    <controller type='pci' index='8' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='8' port='0xf'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x7'/>
    </controller>
    <controller type='pci' index='9' model='pcie-to-pci-bridge'>
      <model name='pcie-pci-bridge'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:c4:3e:1e'/>
      <source bridge='br0'/>
      <model type='virtio-net'/>
      <address type='pci' domain='0x0000' bus='0x09' slot='0x01' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
    </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='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <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='0x10' slot='0x00' function='0x0'/>
      </source>
      <rom file='/mnt/user/isos/Asus-GTX750Ti.Edited.rom'/>
      <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x10' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x1411'/>
        <product id='0x1819'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='host,kvm=off,hv_vendor_id=null'/>
    <qemu:arg value='-machine'/>
    <qemu:arg value='q35,kernel_irqchip=on'/>
  </qemu:commandline>
</domain>
 

  • Author
2 hours ago, Unraid Newbie said:

 <rom file='/mnt/user/isos/Asus-GTX750Ti.Edited.rom'/>

I too edited my xml as you did. I noticed my edit did NOT have .rom at the end so I changed the extension to that and added it in the xml. Booted with no issues but still not getting any display. I will keep digging in what you posted and elsewhere.

@Gobananas

@Unraid Newbie

 

In both the above cases, the xml for the video devices have not been edited correctly. This may not be the root cause, but there are a number of steps you can follow for best results.

 

Check out the link in my sig and come back with the suggested deayils once you’ve exhausted those steps.

  • Author
On 8/6/2020 at 4:07 PM, meep said:

@Gobananas

@Unraid Newbie

 

In both the above cases, the xml for the video devices have not been edited correctly. This may not be the root cause, but there are a number of steps you can follow for best results.

 

Check out the link in my sig and come back with the suggested deayils once you’ve exhausted those steps.

Thank you for the advise meep. After going over your amazing guide and solving many other puzzles like getting virt-manager to work. I am still not sure on what is going on. Virt-manager simply shows a blank screen. Nothing more. I moved the GPU to another PC to confirm it was working and it had no trouble at all. Still I grabbed 2 1100w power supplies so I could upgrade the GPU to a Geforce 680. Once I get the new power supplies I am going to start off again from the "Click 'Add Hardware' and choose Graphics to add a Spice or VNC adapter." ( Meeps guide: https://mediaserver8.blogspot.com/2020/07/problems-passing-through-gpu-to-unraid.html). I will post again my results.

 

To get Virt-manager to work for me:
From the Nerd pack:

netcat-openbsd-1.105-x86_64-2.tgz

libffi-3.3-x86_64-1.txz

 

After these were installed go to virt-manager:
File>Hypervisor>Customer URI>qemu+ssh://root@your-server-ip/system

 

Thanks to all who help me and everyone else. The support is amazing here!

 

 

 

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.