No video output on virtual machine gpu


Recommended Posts

So I have this HP ProLiant G7, and I'm trying to run a virtual machine off it, both virtualisation options are enabled in the bios, and unraid  confirms that. 

I had some issues even starting a virtual machine with the GPU assigned, with some passthrough and splitting the GPU from the HDMI audio of the GPU worked, as in it actually turns on now, but no video output at all, i can see the machine works fine with a VNC connection, but still no output, not on VGA not on HDMI.
One thing to mention is that this server does not have native PCI-E, but uses these kind of risers of which physical bus is longer than PCI-E x16, right now I'm using a Riser to PCI-Ex4(2) and PCI-E x8(1), I'll mention that these 3 PCI-E ports are all on the same PCB.

Thanks in advance

syslog.txt

vmlog.txt

Link to comment
16 hours ago, 1812 said:

see the link in my sig to get it working.

Okay so after hours of trying, with the cfg and stuff, splitting the groups and that, it doesn't work, or rather the groups dont split. Thing is, before I reset the cfg so I can start over following the guide that you posted in your sig, the GPU and audio portions were already split, as I already did that, but I still never got any video output which was my main problem.

I also rolled back to the backup bios (2011) and nothing changed basically, the main bios is from 2013. I wanted to update the bios and stuff, but I can't get through the warranty and support ticket stage as I bought this used and I don't think there's any warranty on it.

Any other ideas?

I basically tried everything from that guide, and most general threads in the forums.

Link to comment
26 minutes ago, 1812 said:

Try with a Ubuntu or other Linux desktop C.K. first to isolate the issue (vm os vs server configuration)

Could you elaborate? I'm quite new to this.

Also it seems that the commands in my cfg don't take effect, passthrough only worked after I enabled it in the browser gui.ž

default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage
  append pcie_acs_override=10de:0be3,10de:0a65 vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot
label unRAID OS GUI Mode
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot unraidsafemode
label unRAID OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Link to comment
1 minute ago, DJ BONA said:

Could you elaborate? I'm quite new to this.

Also it seems that the commands in my cfg don't take effect, passthrough only worked after I enabled it in the browser gui.ž

default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage
  append pcie_acs_override=10de:0be3,10de:0a65 vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot
label unRAID OS GUI Mode
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot unraidsafemode
label unRAID OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

 

it autocorrected in my previous quote.

 

I was saying to try to install another OS to determine if your video output issue is related to either the virtual machine OS you are trying to run, or to a system configuration issue.

 

 you should only need this:

 

default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage append pcie_acs_override=10de:0be3,10de:0a65 vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot
label unRAID OS GUI Mode
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot unraidsafemode
label unRAID OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Assuming the device id's are correct, it should move those devices into either their own group or groups. If it doesn't work, and using GUI mode worked, then remove the custom override and use the generic override=downstream in the first section of the syslinux.cfg. Regardless, you won't be able to get passthrough working without allowing unsafe interrupts.

 

I've had a weird thing happen once to one of my 580 G7's where it just wouldn't run vm's. I ended up just doing a bios reset to all defaults, then it worked. I then went back to bios and readjusted the setting back to where they were in terms of performance/power/etc.  No explanation why, just happened.

Link to comment
1 hour ago, 1812 said:

 

it autocorrected in my previous quote.

 

I was saying to try to install another OS to determine if your video output issue is related to either the virtual machine OS you are trying to run, or to a system configuration issue.

 

 you should only need this:

 


default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage append pcie_acs_override=10de:0be3,10de:0a65 vfio_iommu_type1.allow_unsafe_interrupts=1 initrd=/bzroot
label unRAID OS GUI Mode
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot unraidsafemode
label unRAID OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Assuming the device id's are correct, it should move those devices into either their own group or groups. If it doesn't work, and using GUI mode worked, then remove the custom override and use the generic override=downstream in the first section of the syslinux.cfg. Regardless, you won't be able to get passthrough working without allowing unsafe interrupts.

 

I've had a weird thing happen once to one of my 580 G7's where it just wouldn't run vm's. I ended up just doing a bios reset to all defaults, then it worked. I then went back to bios and readjusted the setting back to where they were in terms of performance/power/etc.  No explanation why, just happened.

So I'm using the exact same config that you pasted here, it does show that override is on, but it doesn't split them. Problem when running VM's is, when trying to IGPU (INTx fd)  i get an error, and another error with GPU(failed to set iommu).
The groups for gpu still aren't split. Any suggestions?

image.png

image.png

Link to comment
3 hours ago, DJ BONA said:

So I'm using the exact same config that you pasted here, it does show that override is on, but it doesn't split them. Problem when running VM's is, when trying to IGPU (INTx fd)  i get an error, and another error with GPU(failed to set iommu).
The groups for gpu still aren't split. Any suggestions?

image.png

image.png

 

post diagnostics after vm launch failure (tools>diagnostics) the INT x fd is a new one for me. Are you trying to use the (weak) onboard vga port? As far as the second iommu issue, depending on what bios version/year you are using, it may be the rmrr issue.

Link to comment

I'll just upload the zip file, so going back to the INT x, yeah I was trying to use the onboard VGA port.
Also talking about the bios, the current bios is 2013, the backup is 2011, I tried this already but it didnt fix anything, I switched between the 2 but it seems not to have any effect. I don't know how to get older bios or newer one in fact, because of the HPe warranty requirement, I bought this used so I'm not really sure how to get a bios file, google brings back nothing except HPe.

unrem-diagnostics-20180624-0226.zip

Link to comment

 

 

so the good news is that this is your problem:

 

un 24 02:26:04 unRem kernel: pci 0000:11:00.1: Device is ineligible for IOMMU domain attach due to platform RMRR requirement.  Contact your platform vendor.

 

It is currently in a group (19) with 11:00.0 , which is the GT218. This is also part of your problem. UnRaid doesn't like to play nice with older cards. Something to do with initiation, onboard bios or something. I don't recall. But At a minimum I'd use a gt 710. I've made those work with the rmrr workaround outlined in the proliant thread. 

 

This older card may be part of the problem why the gpu won't split into 2 groups with each having either video or audio. you can, as a last attempt, try changing the syslinux.cfg to 

pcie_acs_override=downstream,multifuncion

 

This sort of brute forces all devices into different groups where possible. If it doesn't split the card into 2 groups, then you can either try a different slot, or you will need to try a different card.

 

As fars as the integrated gpu... I wouldn't even bother.

Link to comment

Okay so I've made some progress, I put my RX 480 into the server, PCI power from my PC power supply, i mean it works right.
I managed to split the video and the HDMI audio in other groups, and I deleted my old VM, and made a new one. I've found out that I can see the bios of the VM and stuff, it all shows fine until the prompt "press any key to boot from CD or DVD", after that prompt goes through, on the VNC the windows install starts, but on the monitor the image freezes and never continues. After i force stop the VM the frozen image stays there, the only way to unfreeze it is to set the Sound device in the vm to the GPU, and then it gives me the error for failed to set up group, and as the error happens, the image unfreezes and the display turns off. If I launch the VM again, it shows video on the monitor right until that point.

Any suggestions for what to do next?

 

  • Like 1
Link to comment

UPDATE: So I've managed to get the VM to show up on the monitor, basically I disabled the VNC and it works now. Maybe the issue was that I was trying to run both things at the same time? Nonetheless it works, for now..

The GPU (1050TI) for the server is here tomorrow so I'll be back if any troubles arise until then.

Thank you for your time

  • Like 1
Link to comment
2 hours ago, DJ BONA said:

UPDATE: So I've managed to get the VM to show up on the monitor, basically I disabled the VNC and it works now. Maybe the issue was that I was trying to run both things at the same time? Nonetheless it works, for now..

The GPU (1050TI) for the server is here tomorrow so I'll be back if any troubles arise until then.

Thank you for your time

 

Awesome! Windows doesn't work well with vnc and a passthrough gpu. You can do that with osx (sort of).

 

have fun unraiding!

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.