ehftwelve

Members
  • Posts

    16
  • Joined

  • Last visited

Posts posted by ehftwelve

  1. My kids are all home schooled. I have a need for several PCs, so I opted to try getting something work with Unraid and VMs. I will be having about 3 VMs running at a time (Windows 10) for either gaming or school work. My initial strategy, to save both disk space and for reuse, would be to utilize btrfs and

    cp —reflink

    to have a “master” VM and then copies of the master VM for the other 2 VMs, only updating the other VMs when anything system wide is changed (new software installed etc).

     

    My reasoning for going this route is because I have small children that will be using this VMs so rolling back in case of any catastrophe will be simple.

     

    Has anyone else accomplished something long term like this? Are there issues I’m just not considering?

     

    I know any changes the users have made that deviate from the “master” VM will be erased, so I suppose I would need to have a mapped network drive to store data like Documents and things. Is it possible to store the AppData folders on the users home directory to a network drive as well? And the utilize symlinks to make it seamless? Or am I just way off base and making things much too complicated so I should just go the traditional route and give each user their own VM? With snapshots etc created in case of catastrophe.

     

    I’m very interested in anyone’s thoughts on this scenario. Thank you!

     

    TL;DR does it make sense and is it practical to use btrfs and just

    cp —reflink

    a single VM to be used my multiple users at once?

  2. On 11/16/2018 at 10:50 AM, jordanmw said:

    Finally got my issues solved- since I had no slots for an extra USB card- I used a U.2 to plx PCIEX4 slot and got an allegro 4 controller card.  Now I just need to pass one controller through to each machine. Had some bios changes that allowed me to enable it with unraid and I am off to the races!

    Can you link the U.2 to PCIEX4 riser or whatever you purchased? I am about to work on a build almost exactly like yours. Just needed to solve the 4 separate controllers for the 4 gaming VMs. And did your case have enough expansion slots for the USB controllers?

  3. Ok so that has not worked for your 950. Its still in an iommu group with other items. However the 1080 is in its own group now.

    Are there any other pcie slots that you can put your 950 in. It may then be in its own group.

     

    Nope, this board only has 2 PCIe slots. The 1st is x16 and the 2nd is x4 (according to the manual).

     

    If I were to purchase this board: GIGABYTE GA-Z170XP-SLI -- do you think that I could run 2 VMs at once, each with their own GPU passed through? I am starting to think this is either a limitation of my motherboard or the H170M chipset.

  4. It is your iommu groups which is the problem.

    Enable PCIe ACS Override  this is found in settings vm manager then toggle the advanced settings. You will then need to reboot the server afterwards for it to take effect. After you have done this please repost the iommu groups. Have a look here http://lime-technology.com/forum/index.php?topic=53573

     

    Here are my IOMMU groups after Enabling the PCIe ACS Override:

     

    /sys/kernel/iommu_groups/0/devices/0000:00:00.0
    /sys/kernel/iommu_groups/1/devices/0000:00:01.0
    /sys/kernel/iommu_groups/2/devices/0000:00:02.0
    /sys/kernel/iommu_groups/3/devices/0000:00:14.0
    /sys/kernel/iommu_groups/4/devices/0000:00:16.0
    /sys/kernel/iommu_groups/5/devices/0000:00:17.0
    /sys/kernel/iommu_groups/6/devices/0000:00:1b.0
    /sys/kernel/iommu_groups/6/devices/0000:00:1b.3
    /sys/kernel/iommu_groups/6/devices/0000:02:00.0
    /sys/kernel/iommu_groups/7/devices/0000:00:1c.0
    /sys/kernel/iommu_groups/7/devices/0000:00:1c.4
    /sys/kernel/iommu_groups/7/devices/0000:06:00.0
    /sys/kernel/iommu_groups/7/devices/0000:06:00.1
    /sys/kernel/iommu_groups/8/devices/0000:00:1d.0
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.0
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.2
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.3
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.4
    /sys/kernel/iommu_groups/10/devices/0000:00:1f.6
    /sys/kernel/iommu_groups/11/devices/0000:01:00.0
    /sys/kernel/iommu_groups/11/devices/0000:01:00.1

     

    And devices:

    00:00.0 Host bridge [0600]: Intel Corporation Skylake Host Bridge/DRAM Registers [8086:191f] (rev 07)
    00:01.0 PCI bridge [0604]: Intel Corporation Skylake PCIe Controller (x16) [8086:1901] (rev 07)
    00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:1912] (rev 06)
    00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller [8086:a12f] (rev 31)
    00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-H CSME HECI #1 [8086:a13a] (rev 31)
    00:17.0 SATA controller [0106]: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] [8086:a102] (rev 31)
    00:1b.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Root Port #19 [8086:a169] (rev f1)
    00:1b.3 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Root Port #20 [8086:a16a] (rev f1)
    00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #3 [8086:a112] (rev f1)
    00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #5 [8086:a114] (rev f1)
    00:1d.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #9 [8086:a118] (rev f1)
    00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-H LPC Controller [8086:a144] (rev 31)
    00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-H PMC [8086:a121] (rev 31)
    00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-H HD Audio [8086:a170] (rev 31)
    00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-H SMBus [8086:a123] (rev 31)
    00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I219-V [8086:15b8] (rev 31)
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1)
    01:00.1 Audio device [0403]: NVIDIA Corporation GP104 High Definition Audio Controller [10de:10f0] (rev a1)
    02:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge [1b21:1080] (rev 04)
    06:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 950] [10de:1402] (rev a1)
    06:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fba] (rev a1)
    

  5. hi, i hope i'm not jumping into this without having much clue.

    but to my understanding, the GPU cards should be in separate iommu groups for passthrough.

     

    but is see the 950 is in group 7 along with different device. Not sure if that PCI device is normal to be in that group (e.g. bundled).

     

    Also, i see that the 1080 is also with another device (group 1).

     

    As i remember, on my asus x99-m ws matx motherboard, my 550ti and 1060 are in totally separate groups, without any other devices.

     

    -d

     

     

     

    I think you might be on to something...

     

    The GTX1080 is in slot 1, which according to the system devices is: Intel Corporation Skylake PCIe Controller (x16)

     

    The GTX950 is in slot 2, which according to the system devices is: either Intel Corporation Sunrise Point-H PCI Express Root Port #3 or Intel Corporation Sunrise Point-H PCI Express Root Port #5

     

    Why does my motherboard not have 2 Intel Corporation Skylake PCIe Controller (x16)? Or at least another that says Intel Corporation Skylake PCIe Controller (x4) or something?

  6. Too bad :(.

     

    Here's some shots in the dark (I'm a firm believer in the "Try it all" technique to isolate the problem. More than likely these won't be the solution, but it doesn't hurt to rule them out):

     

    1. Have you tried dumping the vbios then passing that to the xml of the vm? This sometimes helps with cards that act a bit flaky.

    Here's a great youtube video by u/gridrunner that walks you through it: https://www.youtube.com/embed/mM7ntkiUoPk

    (Note: Sorry about the YouTube embed link. UnRaid seems to eat any other youtube link I include...)

     

    2. Try adding xvga='yes' to your hostdev tag for the card:

    <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>

     

    Honestly, not entirely sure if that's necessary. I see it sometimes, other times I don't. I've googled if it's necessary, and can't find an answer, but at this point, it's worth a shot.

     

    3. Hyper-v Off/On. Have you tried both off and on? Since 6.2, I don't believe it's an issue with nvidia gpus, but since we're trying everything, I thought I'd throw it in there.

     

    If you have the time, it wouldn't hurt to try all these things in your OVMF as well as SeaBios VM...

     

    Good luck! That's the extent of my pitiful VM knowledge :)

     

     

    Well, I tried those steps and had the same result every time. I think this is related to my motherboard.

     

    I actually swapped out the positioning of the GTX1080 and the GTX950 and got the same exact result from the GTX1080.

     

    I know the PCIe lane for the 2nd PCIe slot is x4 not x16, but the board is labeled for crossfire... which makes me think there would be no issue getting the other slot to work.

     

    If I were to purchase another motherboard (that has 2 PCIe x16 lanes) would it be reasonable to assume this problem would go away?

  7. Have you tried SeaBios instead of OVMF for your windows install? I could not get my drivers installed for several cards with OVMF (VM would crash and occasionally whole server during driver install) and Windows 10. Switched to SeaBios, and cards installed without issue...

     

    Tried a brand new installation with SeaBios instead of OVMF, same problem and same error, while installing the nvidia drivers. I also tried to use newer virtio drivers and that also had the same problem.

  8. I see you are not passing through the sound of the GPU, try that first.

    The problem looks to be your pcie root port, if the above doesn't work you could try to enable the ACS override, but most likely won't work.

     

    Download DDU and clean out the drivers from the 1080 and see if that makes any difference.

     

     

    I tried sound card, that did not work.

     

    What is interesting is I tried DDU and then switched the passthrough to GTX 950. The VM booted fine and stayed booted for as long as I wanted, until I installed the drivers for the display adapter. As soon as I installed any driver (nvidia or from microsoft) the VM crashed again with the same errors. Any thoughts?

  9. Have you checked for any bios updates for your mainboard?

     

    Yup. Updated to the latest.

     

    Can you change pcie speeds in your bios for the slot the GTX 950 is in to gen1?

    You can read more here

     

    Don't know if it works, but worth a try.

     

    Welp, I coudn't see an option exactly like the one mentioned in the site you linked, but I did try altering the Max Link Speed to to Gen1 (from Auto), and no dice.

     

    I do have a macOS Sierra VM that seems to work correctly with this card in the 2nd slot. Any idea why a Windows VM would not? Should be noted as well that I copied the .img for my VM that runs my GTX 1080 and then altered the passthrough to the GTX 950. That is what I am running when this inevitably fails.

     

    Here is my XML for Windows 10:

    <domain type='kvm'>
      <name>Gaming (2)</name>
      <uuid>b4941539-29d3-279b-c282-afcfe64c2985</uuid>
      <metadata>
        <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
      </metadata>
      <memory unit='KiB'>6291456</memory>
      <currentMemory unit='KiB'>6291456</currentMemory>
      <memoryBacking>
        <nosharepages/>
        <locked/>
      </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.5'>hvm</type>
        <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
        <nvram>/etc/libvirt/qemu/nvram/b4941539-29d3-279b-c282-afcfe64c2985_VARS-pure-efi.fd</nvram>
      </os>
      <features>
        <acpi/>
        <apic/>
        <hyperv>
          <relaxed state='on'/>
          <vapic state='on'/>
          <spinlocks state='on' retries='8191'/>
          <vendor id='none'/>
        </hyperv>
      </features>
      <cpu mode='host-passthrough'>
        <topology sockets='1' cores='2' threads='1'/>
      </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/cache/vdisks/Gaming/vdisk2.img'/>
          <target dev='hdc' bus='virtio'/>
          <boot order='1'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
        </disk>
        <disk type='file' device='cdrom'>
          <driver name='qemu' type='raw'/>
          <source file='/mnt/user/isos/virtio-win-0.1.118-2.iso'/>
          <target dev='hdb' bus='ide'/>
          <readonly/>
          <address type='drive' controller='0' bus='0' target='0' unit='1'/>
        </disk>
        <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>
        <controller type='pci' index='0' model='pci-root'/>
        <controller type='ide' index='0'>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
        </controller>
        <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:fe:25:0b'/>
          <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'>
          <source mode='connect'/>
          <target type='virtio' name='org.qemu.guest_agent.0'/>
          <address type='virtio-serial' controller='0' bus='0' port='1'/>
        </channel>
        <hostdev mode='subsystem' type='pci' managed='yes'>
          <driver name='vfio'/>
          <source>
            <address domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
          </source>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x062a'/>
            <product id='0x4101'/>
          </source>
        </hostdev>
        <memballoon model='virtio'>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
        </memballoon>
      </devices>
    </domain>
    

     

    And here is my XML for the macOS Sierra:

    <domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
      <name>macOS Sierra</name>
      <uuid>102df743-14f6-13f8-a269-0d4ec54538d4</uuid>
      <metadata>
        <vmtemplate xmlns="unraid" name="Ubuntu" icon="ubuntu.png" os="ubuntu"/>
      </metadata>
      <memory unit='KiB'>12582912</memory>
      <currentMemory unit='KiB'>12582912</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>
      <os>
        <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
        <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
        <nvram>/etc/libvirt/qemu/nvram/102df743-14f6-13f8-a269-0d4ec54538d4_VARS-pure-efi.fd</nvram>
        <boot dev='hd'/>
      </os>
      <features>
        <acpi/>
      </features>
      <cpu mode='custom' match='exact'>
        <model fallback='allow'>Penryn</model>
      </cpu>
      <clock offset='utc'/>
      <on_poweroff>destroy</on_poweroff>
      <on_reboot>restart</on_reboot>
      <on_crash>destroy</on_crash>
      <devices>
        <emulator>/usr/local/sbin/qemu</emulator>
        <disk type='file' device='disk'>
          <driver name='qemu' type='raw' cache='writeback'/>
          <source file='/mnt/cache/vdisks/macOS Sierra/vdisk1.img'/>
          <target dev='hda' bus='sata'/>
          <address type='drive' controller='0' bus='0' target='0' unit='0'/>
        </disk>
        <controller type='usb' index='0'>
          <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
        </controller>
        <controller type='sata' index='0'>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
        </controller>
        <controller type='pci' index='0' model='pcie-root'/>
        <controller type='pci' index='1' model='dmi-to-pci-bridge'>
          <model name='i82801b11-bridge'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
        </controller>
        <controller type='pci' index='2' model='pci-bridge'>
          <model name='pci-bridge'/>
          <target chassisNr='2'/>
          <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
        </controller>
        <controller type='pci' index='3' model='pci-bridge'>
          <model name='pci-bridge'/>
          <target chassisNr='3'/>
          <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0'/>
        </controller>
        <interface type='bridge'>
          <mac address='52:54:00:51:66:48'/>
          <source bridge='br0'/>
          <model type='e1000-82545em'/>
          <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
        </interface>
        <hostdev mode='subsystem' type='pci' managed='yes'>
          <driver name='vfio'/>
          <source>
            <address domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
          </source>
          <address type='pci' domain='0x0000' bus='0x03' slot='0x03' function='0x0'/>
        </hostdev>
        <hostdev mode='subsystem' type='pci' managed='yes'>
          <driver name='vfio'/>
          <source>
            <address domain='0x0000' bus='0x00' slot='0x1f' function='0x3'/>
          </source>
          <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x1532'/>
            <product id='0x002e'/>
          </source>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x1b1c'/>
            <product id='0x1b07'/>
          </source>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x0a5c'/>
            <product id='0x21e8'/>
          </source>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x2357'/>
            <product id='0x0105'/>
          </source>
        </hostdev>
        <memballoon model='none'/>
      </devices>
      <seclabel type='none' model='none'/>
      <qemu:commandline>
        <qemu:arg value='-device'/>
        <qemu:arg value='usb-kbd'/>
        <qemu:arg value='-device'/>
        <qemu:arg value='usb-mouse'/>
        <qemu:arg value='-device'/>
        <qemu:arg value='isa-applesmc,osk=ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc'/>
        <qemu:arg value='-smbios'/>
        <qemu:arg value='type=2'/>
        <qemu:arg value='-cpu'/>
        <qemu:arg value='Penryn,vendor=GenuineIntel'/>
      </qemu:commandline>
    </domain>
    

     

    Also, here are my system devices:

    00:00.0 Host bridge [0600]: Intel Corporation Skylake Host Bridge/DRAM Registers [8086:191f] (rev 07)
    00:01.0 PCI bridge [0604]: Intel Corporation Skylake PCIe Controller (x16) [8086:1901] (rev 07)
    00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 530 [8086:1912] (rev 06)
    00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller [8086:a12f] (rev 31)
    00:14.2 Signal processing controller [1180]: Intel Corporation Sunrise Point-H Thermal subsystem [8086:a131] (rev 31)
    00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-H CSME HECI #1 [8086:a13a] (rev 31)
    00:17.0 SATA controller [0106]: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] [8086:a102] (rev 31)
    00:1b.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Root Port #19 [8086:a169] (rev f1)
    00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #3 [8086:a112] (rev f1)
    00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #5 [8086:a114] (rev f1)
    00:1d.0 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #9 [8086:a118] (rev f1)
    00:1d.4 PCI bridge [0604]: Intel Corporation Sunrise Point-H PCI Express Root Port #13 [8086:a11c] (rev f1)
    00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-H LPC Controller [8086:a144] (rev 31)
    00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-H PMC [8086:a121] (rev 31)
    00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-H HD Audio [8086:a170] (rev 31)
    00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-H SMBus [8086:a123] (rev 31)
    00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I219-V [8086:15b8] (rev 31)
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1)
    01:00.1 Audio device [0403]: NVIDIA Corporation GP104 High Definition Audio Controller [10de:10f0] (rev a1)
    02:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge [1b21:1080] (rev 04)
    05:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 950] [10de:1402] (rev a1)
    05:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fba] (rev a1)
    

     

    And IOMMU Groups:

    /sys/kernel/iommu_groups/0/devices/0000:00:00.0
    /sys/kernel/iommu_groups/1/devices/0000:00:01.0
    /sys/kernel/iommu_groups/1/devices/0000:01:00.0
    /sys/kernel/iommu_groups/1/devices/0000:01:00.1
    /sys/kernel/iommu_groups/2/devices/0000:00:02.0
    /sys/kernel/iommu_groups/3/devices/0000:00:14.0
    /sys/kernel/iommu_groups/3/devices/0000:00:14.2
    /sys/kernel/iommu_groups/4/devices/0000:00:16.0
    /sys/kernel/iommu_groups/5/devices/0000:00:17.0
    /sys/kernel/iommu_groups/6/devices/0000:00:1b.0
    /sys/kernel/iommu_groups/6/devices/0000:02:00.0
    /sys/kernel/iommu_groups/7/devices/0000:00:1c.0
    /sys/kernel/iommu_groups/7/devices/0000:00:1c.4
    /sys/kernel/iommu_groups/7/devices/0000:05:00.0
    /sys/kernel/iommu_groups/7/devices/0000:05:00.1
    /sys/kernel/iommu_groups/8/devices/0000:00:1d.0
    /sys/kernel/iommu_groups/8/devices/0000:00:1d.4
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.0
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.2
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.3
    /sys/kernel/iommu_groups/9/devices/0000:00:1f.4
    /sys/kernel/iommu_groups/10/devices/0000:00:1f.6
    

     

    The GTX 950 is what I am having trouble with.

  10. I had a similar issue when I first started.

     

    When your server boots, does the BIOS print on the display the card you want passed through is connected to?

     

    I had to set in my BIOS for my onboard graphics to be the default display (where the BIOS and unraid print to) otherwise I could not passthrough my GPU.

  11. Here are my system specs:

     

    Unraid 6.2.4

    i5-6500

    16GB DDR4 RAM

    Gigabyte GA-H170M-D3H (F21 BIOS - Latest)

    NVIDIA GTX 1080 (Slot 1)

    NVIDIA GTX 950 (Slot 2)

     

    Whenever I run a VM and passthrough the GTX 950, my VM eventually (after a couple of minutes) freezes and then this error is displayed in the syslog:

     

    Jan 12 14:02:00 Tower kernel: pcieport 0000:00:1c.4: AER: Device recovery failed
    Jan 12 14:02:00 Tower kernel: pcieport 0000:00:1c.4: AER: Multiple Uncorrected (Non-Fatal) error received: id=00e4
    Jan 12 14:02:00 Tower kernel: pcieport 0000:00:1c.4: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, id=00e4(Requester ID)
    Jan 12 14:02:00 Tower kernel: pcieport 0000:00:1c.4:   device [8086:a114] error status/mask=00100000/00000000
    

     

    Any thoughts/ideas/suggestions?

  12. Hey All,

     

    I am looking into setting up my PC as an unRAID box so that I can more easily manage VMs etc (Windows 10, Linux, MacOS... some for gaming some for programming).

     

    I have a pretty basic setup:

     

    i5-6500

    16GB RAM

    3TB HDD

    1TB SSD

    GTX 1080

     

    So I want to passthrough the GTX1080 for pretty much all of these. I setup my VMs such that the vdisks are on the 1TB SSD (as a cache drive) and the ISOs are on the 3TB HDD. I am using virtio-win-0.1.126.iso for my VirtIO drivers and then I downloaded a Windows 10 ISO. I got Windows to install fine with passthrough and all that Jazz. The problem really occurs when I (for whatever reason) have to Force Stop the Windows 10 VM. For example, I woke up to a sleeping VM, woke it up and no longer had USB devices (keyboard and mouse) and the good ol fashioned Stop did not work on the VM and had to resort to Force Stop. Once the VM started, I either get 1 of two issues (I have danced around this several times): 1) I get INACCESSIBLE_BOOT_DEVICE, or 2) I never actually log in to Windows (just see a spinner forever -- this is after putting in my password).

     

    Has anyone ran into these issues? I've tried both SeaBIOS and OVMF.

     

    Here is my XML for the VM:

     

    <domain type='kvm'>
      <name>Gaming</name>
      <uuid>6b7ffcfe-b69a-2386-9f8d-ca07c9a3c267</uuid>
      <metadata>
        <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
      </metadata>
      <memory unit='KiB'>12582912</memory>
      <currentMemory unit='KiB'>12582912</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>
      <os>
        <type arch='x86_64' machine='pc-i440fx-2.5'>hvm</type>
      </os>
      <features>
        <acpi/>
        <apic/>
        <hyperv>
          <relaxed state='on'/>
          <vapic state='on'/>
          <spinlocks state='on' retries='8191'/>
          <vendor id='none'/>
        </hyperv>
      </features>
      <cpu mode='host-passthrough'>
        <topology sockets='1' cores='4' threads='1'/>
      </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/cache/vdisks/Gaming/vdisk1.img'/>
          <target dev='hdc' bus='virtio'/>
          <boot order='1'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
        </disk>
        <disk type='file' device='cdrom'>
          <driver name='qemu' type='raw'/>
          <source file='/mnt/user/isos/virtio-win-0.1.126.iso'/>
          <target dev='hdb' bus='ide'/>
          <readonly/>
          <address type='drive' controller='0' bus='0' target='0' unit='1'/>
        </disk>
        <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>
        <controller type='pci' index='0' model='pci-root'/>
        <controller type='ide' index='0'>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
        </controller>
        <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:b4:5d:64'/>
          <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'>
          <source mode='connect'/>
          <target type='virtio' name='org.qemu.guest_agent.0'/>
          <address type='virtio-serial' controller='0' bus='0' port='1'/>
        </channel>
        <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>
          <driver name='vfio'/>
          <source>
            <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
          </source>
          <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>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x1532'/>
            <product id='0x002e'/>
          </source>
        </hostdev>
        <hostdev mode='subsystem' type='usb' managed='no'>
          <source>
            <vendor id='0x1b1c'/>
            <product id='0x1b07'/>
          </source>
        </hostdev>
        <memballoon model='virtio'>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
        </memballoon>
      </devices>
    </domain>
    

     

    SOLVED:

     

    So a few of the "guides" that I was following seemed a bit outdated (including limetechs). I used win8.1 folder in the virtio iso for my hard drive drivers, but I didn't realize there was a win10 folder. Once I used the win10 drivers, everything has worked perfectly. 0 issues. Just thought I should share.