Keek Uras Posted January 1, 2023 Share Posted January 1, 2023 (edited) Hello! Can anyone suggest an updated Gaming VM guide? I've spent an entire day with various guides I've found online (including SpaceInvaderOne's) and every one has a part that is not up to date with the current unRAID OS. I can't get any video output with it connected with HDMI and the RTX 2080 TI is bound. Thanks! Edited March 6, 2023 by Keek Uras Quote Link to comment
Jumbo_Erdnuesse Posted January 2, 2023 Share Posted January 2, 2023 (edited) Maybe this will help you: Since you are using Nvidia RTX card you will need to use a vbios added to the gpu passthrough. You can add this in the VM template. Edited January 2, 2023 by Jumbo_Erdnuesse 1 Quote Link to comment
Keek Uras Posted January 2, 2023 Author Share Posted January 2, 2023 (edited) 1 hour ago, Jumbo_Erdnuesse said: Maybe this will help you: Since you are using Nvidia RTX card you will need to use a vbios added to the gpu passthrough. You can add this in the VM template. Thank you for the response. Still no luck, just a black screen. Also, having a vBIOS gives me this error: 2023-01-02T16:49:06.327152Z qemu-system-x86_64: -device {"driver":"vfio-pci","host":"0000:01:00.0","id":"hostdev0","bus":"pci.0","addr":"0x5","romfile":"/mnt/cache/appdata/domains/EVGA.RTX2080Ti.11264.181024_1.rom"}: Failed to mmap 0000:01:00.0 BAR 1. Performance may be slow I did remove the header with a hex editor: Any other suggestions? Thanks, ~K Edited January 2, 2023 by Keek Uras added details Quote Link to comment
Keek Uras Posted January 2, 2023 Author Share Posted January 2, 2023 Ok, turns out the video card is having issues. I was getting this: I took the server down, reseated the card and now it's no longer seen in the BIOS or listed in the IOMMU groups. Going to RMA it and then I'll try this again. Thanks for your help. Quote Link to comment
Jumbo_Erdnuesse Posted January 3, 2023 Share Posted January 3, 2023 (edited) You could look up your card on https://www.techpowerup.com/vgabios/ and find your bios there. Maybe something went wrong with your vbios dump? Nvidia cards are known to cause issues with passthrough. I used a lot of information from this https://forums.serverbuilds.net/t/guide-remote-gaming-on-unraid/4248 it is one of the best written how-to´s i could find. Almost everthing in this how-to from chapter 6,7,8 and 9 worked for me. Also worth looking: https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF#Prerequisites Edited January 3, 2023 by Jumbo_Erdnuesse Quote Link to comment
Keek Uras Posted January 3, 2023 Author Share Posted January 3, 2023 6 hours ago, Jumbo_Erdnuesse said: You could look up your card on https://www.techpowerup.com/vgabios/ and find your bios there. Maybe something went wrong with your vbios dump? Nvidia cards are known to cause issues with passthrough. I used a lot of information from this https://forums.serverbuilds.net/t/guide-remote-gaming-on-unraid/4248 it is one of the best written how-to´s i could find. Almost everthing in this how-to from chapter 6,7,8 and 9 worked for me. Also worth looking: https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF#Prerequisites I didn't dump my own, that's where I got the vBIOS file from. I'll try it again once I get the card back. Thanks. Quote Link to comment
ghost82 Posted January 4, 2023 Share Posted January 4, 2023 On 1/2/2023 at 5:55 PM, Keek Uras said: Failed to mmap 0000:01:00.0 BAR 1. Performance may be slow This is usually because the gpu is not properly isolated, efifb may be the culprit, search this forum for fixes. On 1/2/2023 at 9:09 PM, Keek Uras said: When the gpu is isolated it means that it's not available for the host, so it's fine that the nvidia driver in unraid will not load. The proper dirver to be loaded will be that inside the vm. 19 hours ago, Keek Uras said: I didn't dump my own, that's where I got the vBIOS file from. It should be better to dump your own, if possible, otherwise make sure that what you are downloading is the vbios for your exact model, then check and remove the nvidia header. 1 Quote Link to comment
Solution shpitz461 Posted January 4, 2023 Solution Share Posted January 4, 2023 Another thing that might help is add the following feature: <features> ... <hyperv> ... <vendor_id state='on' value='0123756792CD'/> ... </hyperv> </features> value is a 12-character random string And @ghost82 suggestion, edit /boot/syslinux/syslinux.cfg and add 'video=efifb:off' after 'append', like this: And see if this helps. 1 Quote Link to comment
Keek Uras Posted January 12, 2023 Author Share Posted January 12, 2023 (edited) On 1/4/2023 at 3:42 AM, ghost82 said: This is usually because the gpu is not properly isolated, efifb may be the culprit, search this forum for fixes. When the gpu is isolated it means that it's not available for the host, so it's fine that the nvidia driver in unraid will not load. The proper dirver to be loaded will be that inside the vm. It should be better to dump your own, if possible, otherwise make sure that what you are downloading is the vbios for your exact model, then check and remove the nvidia header. I am 100% sure that I have the correct BIOS file and I did the header per SpaceInvaderOne's video. Can you elaborate on not properly isolated? If it is bound, that is the only criteria for isolation, correct? VM Log - note the very last line. 2023-01-12 23:41:18.471+0000: starting up libvirt version: 8.7.0, qemu version: 7.1.0, kernel: 5.19.17-Unraid, hostname: REPOSITORY LC_ALL=C \ PATH=/bin:/sbin:/usr/bin:/usr/sbin \ HOME='/var/lib/libvirt/qemu/domain-1-Windows 10 Gaming Bo' \ XDG_DATA_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10 Gaming Bo/.local/share' \ XDG_CACHE_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10 Gaming Bo/.cache' \ XDG_CONFIG_HOME='/var/lib/libvirt/qemu/domain-1-Windows 10 Gaming Bo/.config' \ /usr/local/sbin/qemu \ -name 'guest=Windows 10 Gaming Box,debug-threads=on' \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain-1-Windows 10 Gaming Bo/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \ -blockdev '{"driver":"file","filename":"/etc/libvirt/qemu/nvram/06b53379-7f3c-3e7b-0284-8a23108d8f77_VARS-pure-efi.fd","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"raw","file":"libvirt-pflash1-storage"}' \ -machine pc-i440fx-7.1,usb=off,dump-guest-core=off,mem-merge=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format \ -accel kvm \ -cpu host,migratable=on,hv-time=on,host-cache-info=on,l3-cache=off \ -m 16896 \ -object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":17716740096}' \ -overcommit mem-lock=off \ -smp 12,sockets=1,dies=1,cores=6,threads=2 \ -uuid 06b53379-7f3c-3e7b-0284-8a23108d8f77 \ -display none \ -no-user-config \ -nodefaults \ -chardev socket,id=charmonitor,fd=36,server=on,wait=off \ -mon chardev=charmonitor,id=monitor,mode=control \ -rtc base=localtime \ -no-hpet \ -no-shutdown \ -boot strict=on \ -device '{"driver":"qemu-xhci","p2":15,"p3":15,"id":"usb","bus":"pci.0","addr":"0x7"}' \ -device '{"driver":"virtio-serial-pci","id":"virtio-serial0","bus":"pci.0","addr":"0x4"}' \ -blockdev '{"driver":"file","filename":"/mnt/user/appdata/domains/Windows 10 Gaming Box/vdisk1.img","node-name":"libvirt-2-storage","cache":{"direct":false,"no-flush":false},"auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-2-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"raw","file":"libvirt-2-storage"}' \ -device '{"driver":"virtio-blk-pci","bus":"pci.0","addr":"0x3","drive":"libvirt-2-format","id":"virtio-disk2","bootindex":1,"write-cache":"on"}' \ -blockdev '{"driver":"file","filename":"/mnt/user/isos/virtio-win-0.1.225-2.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \ -device '{"driver":"ide-cd","bus":"ide.0","unit":1,"drive":"libvirt-1-format","id":"ide0-0-1"}' \ -netdev tap,fd=37,vhost=on,vhostfd=39,id=hostnet0 \ -device '{"driver":"virtio-net-pci","netdev":"hostnet0","id":"net0","mac":"52:54:00:27:03:94","bus":"pci.0","addr":"0x2"}' \ -chardev pty,id=charserial0 \ -device '{"driver":"isa-serial","chardev":"charserial0","id":"serial0","index":0}' \ -chardev socket,id=charchannel0,fd=35,server=on,wait=off \ -device '{"driver":"virtserialport","bus":"virtio-serial0.0","nr":1,"chardev":"charchannel0","id":"channel0","name":"org.qemu.guest_agent.0"}' \ -device '{"driver":"usb-tablet","id":"input0","bus":"usb.0","port":"2"}' \ -audiodev '{"id":"audio1","driver":"none"}' \ -device '{"driver":"ich9-intel-hda","id":"sound0","bus":"pci.0","addr":"0x8"}' \ -device '{"driver":"hda-duplex","id":"sound0-codec0","bus":"sound0.0","cad":0,"audiodev":"audio1"}' \ -device '{"driver":"vfio-pci","host":"0000:01:00.0","id":"hostdev0","bus":"pci.0","addr":"0x5","romfile":"/mnt/cache/appdata/domains/EVGA.RTX2080Ti.11264.181024_1.rom"}' \ -device '{"driver":"vfio-pci","host":"0000:01:00.1","id":"hostdev1","bus":"pci.0","addr":"0x6"}' \ -device '{"driver":"usb-host","hostdevice":"/dev/bus/usb/001/008","id":"hostdev2","bus":"usb.0","port":"1"}' \ -sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ -msg timestamp=on char device redirected to /dev/pts/0 (label charserial0) 2023-01-12T23:41:20.388850Z qemu-system-x86_64: -device {"driver":"vfio-pci","host":"0000:01:00.0","id":"hostdev0","bus":"pci.0","addr":"0x5","romfile":"/mnt/cache/appdata/domains/EVGA.RTX2080Ti.11264.181024_1.rom"}: Failed to mmap 0000:01:00.0 BAR 1. Performance may be slow This is from system devices: I searched the forum regarding efifb, and all I found was people inserting it into their syslinux.cfg, which doesn't seem to work for me. Let me know if there is anything else I could provide that might shine more light on things. Thanks! Edited January 12, 2023 by Keek Uras clean up post Quote Link to comment
Keek Uras Posted January 12, 2023 Author Share Posted January 12, 2023 On 1/4/2023 at 8:57 AM, shpitz461 said: Another thing that might help is add the following feature: <features> ... <hyperv> ... <vendor_id state='on' value='0123756792CD'/> ... </hyperv> </features> value is a 12-character random string And @ghost82 suggestion, edit /boot/syslinux/syslinux.cfg and add 'video=efifb:off' after 'append', like this: And see if this helps. I don't have HyperV enabled (per the video on unRAID's gaming VMs home page), so there is no section to add that to. I had to remove that line from my syslinux.cfg. After adding it and restarting, I couldn't get my server to boot up past that modified line. Quote Link to comment
Keek Uras Posted January 13, 2023 Author Share Posted January 13, 2023 I went ahead and checked iomem as well. I don't see any reference to BAR 1. root@REPOSITORY:~# cat /proc/iomem 00000000-00000fff : Reserved 00001000-0009dfff : System RAM 0009e000-0009efff : Reserved 0009f000-0009ffff : System RAM 000a0000-000fffff : Reserved 000a0000-000bffff : PCI Bus 0000:00 00000000-00000000 : PCI Bus 0000:00 00000000-00000000 : PCI Bus 0000:00 00000000-00000000 : PCI Bus 0000:00 000e0000-000effff : PCI Bus 0000:00 000f0000-000fffff : System ROM 00100000-5da66017 : System RAM 03000000-03c01e07 : Kernel code 03e00000-041d2fff : Kernel rodata 04200000-043a463f : Kernel data 04839000-049fffff : Kernel bss 5da66018-5da72857 : System RAM 5da72858-5da73017 : System RAM 5da73018-5da92e57 : System RAM 5da92e58-63e94fff : System RAM 63e95000-63e95fff : Reserved 63e96000-63e9bfff : System RAM 63e9c000-63e9cfff : Reserved 63e9d000-6ab4afff : System RAM 6ab4b000-6ac3efff : Reserved 6ac3f000-6dd88fff : System RAM 6dd89000-6dd89fff : Reserved 6dd8a000-705c0fff : System RAM 705c1000-742c0fff : Reserved 742c1000-7451efff : ACPI Tables 7451f000-7471efff : ACPI Non-volatile Storage 7471f000-75ffefff : Reserved 75fff000-75ffffff : System RAM 76000000-79ffffff : Reserved 7a600000-7a7fffff : Reserved 7b000000-807fffff : Reserved 80800000-bfffffff : PCI Bus 0000:00 80800000-80800fff : 0000:00:1f.5 80900000-80efffff : PCI Bus 0000:05 80900000-8097ffff : 0000:05:00.0 80980000-809bffff : 0000:05:00.0 80980000-809bffff : mpt2sas 809c0000-80dbffff : 0000:05:00.0 80dc0000-80dc3fff : 0000:05:00.0 80dc0000-80dc3fff : mpt2sas 80dc4000-80e03fff : 0000:05:00.0 80f00000-811fffff : PCI Bus 0000:06 80f00000-80f7ffff : 0000:06:00.0 80f80000-80fbffff : 0000:06:00.0 80f80000-80fbffff : mpt2sas 80fc0000-8117ffff : 0000:06:00.0 81180000-81183fff : 0000:06:00.0 81180000-81183fff : mpt2sas 81184000-8119ffff : 0000:06:00.0 82000000-83ffffff : 0000:00:0e.0 82000000-83ffffff : VMD MEMBAR1 84000000-850fffff : PCI Bus 0000:01 84000000-84ffffff : 0000:01:00.0 84000000-84ffffff : vfio-pci 85000000-8507ffff : 0000:01:00.0 85080000-85083fff : 0000:01:00.1 85080000-85083fff : vfio-pci 85084000-85084fff : 0000:01:00.3 85100000-85afffff : PCI Bus 0000:04 85d00000-85dfffff : PCI Bus 0000:03 85d00000-85d03fff : 0000:03:00.0 85d00000-85d03fff : nvme 85e00000-85efffff : PCI Bus 0000:02 85e00000-85e03fff : 0000:02:00.0 85e00000-85e03fff : nvme 85f00000-85f1ffff : 0000:00:1f.6 85f00000-85f1ffff : e1000e 85f20000-85f21fff : 0000:00:17.0 85f20000-85f21fff : ahci 85f22000-85f227ff : 0000:00:17.0 85f22000-85f227ff : ahci 85f23000-85f230ff : 0000:00:17.0 85f23000-85f230ff : ahci c0000000-cfffffff : PCI MMCONFIG 0000 [bus 00-ff] c0000000-cfffffff : Reserved c0000000-cfffffff : pnp 00:05 e0690000-e069ffff : INTC1056:00 e06a0000-e06affff : INTC1056:00 e06b0000-e06bffff : INTC1056:00 e06d0000-e06dffff : INTC1056:00 e06e0000-e06effff : INTC1056:00 fe000000-fe010fff : Reserved fec00000-fec00fff : Reserved fec00000-fec003ff : IOAPIC 0 fed00000-fed00fff : Reserved fed00000-fed003ff : HPET 0 fed00000-fed003ff : PNP0103:00 fed20000-fed7ffff : Reserved fed40000-fed44fff : MSFT0101:00 fed40000-fed44fff : MSFT0101:00 fed91000-fed91fff : dmar0 feda0000-feda0fff : pnp 00:05 feda1000-feda1fff : pnp 00:05 fedc0000-fedc7fff : pnp 00:05 fee00000-fee00fff : Local APIC fee00000-fee00fff : Reserved ff000000-ffffffff : Reserved 100000000-107f7fffff : System RAM 107f800000-107fffffff : RAM buffer 4000000000-7fffffffff : PCI Bus 0000:00 4000000000-40120fffff : PCI Bus 0000:01 4000000000-400fffffff : 0000:01:00.0 4000000000-400086ffff : efifb 4010000000-4011ffffff : 0000:01:00.0 4010000000-4011ffffff : vfio-pci 4012000000-401203ffff : 0000:01:00.2 4012040000-401204ffff : 0000:01:00.2 4012100000-40122fffff : PCI Bus 0000:04 4012300000-4012300fff : 0000:00:15.0 4014000000-4015ffffff : 0000:00:0e.0 4016000000-40160fffff : 0000:00:1f.3 4016100000-40161fffff : 0000:00:0e.0 4016102000-40161fffff : VMD MEMBAR2 4016200000-401620ffff : 0000:00:14.0 4016200000-401620ffff : xhci-hcd 4016210000-4016217fff : 0000:00:0a.0 4016218000-401621bfff : 0000:00:1f.3 401621c000-401621ffff : 0000:00:14.2 4016220000-40162200ff : 0000:00:1f.4 4016221000-4016221fff : 0000:00:16.0 4016223000-4016223fff : 0000:00:14.2 root@REPOSITORY:~# Quote Link to comment
Keek Uras Posted January 13, 2023 Author Share Posted January 13, 2023 On 1/4/2023 at 8:57 AM, shpitz461 said: And @ghost82 suggestion, edit /boot/syslinux/syslinux.cfg and add 'video=efifb:off' after 'append', like this: And see if this helps. I apologize, I just found another post by @ghost82 that says you won't see any output on the screen once that line is processed. I did not know that. I will add it back and try again. Quote Link to comment
Keek Uras Posted January 13, 2023 Author Share Posted January 13, 2023 On 1/4/2023 at 8:57 AM, shpitz461 said: And @ghost82 suggestion, edit /boot/syslinux/syslinux.cfg and add 'video=efifb:off' after 'append', like this: And see if this helps. I apologize, I just found another post by @ghost82 that says you won't see any output on the screen once that line is processed. I did not know that. I will add it back and try again. Quote Link to comment
Keek Uras Posted January 13, 2023 Author Share Posted January 13, 2023 1 hour ago, Keek Uras said: I apologize, I just found another post by @ghost82 that says you won't see any output on the screen once that line is processed. I did not know that. I will add it back and try again. We have success! That one line in the config fixed it. Thank you folks so much for your help! 1 Quote Link to comment
Recommended Posts
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.