Can't start additional VMs with Passthrough - only one at a time


snocrash

Recommended Posts

**Edit - 09-30-15 - Incompatible video cards?

 

I've solved the issue with the VMs not working reliably.  The Video Cards seem to be the culprit.  My video cards are MSI branded Radeon HD 6450.  When I combine more than one in the system I get unreliable VMs.  I can barely get two to work simultaneously.  I went through every BIOS setting and combination of settings I could think of and nothing resolved the issue.

 

I bought several cheap video cards to test - a Saphire branded HD 6450, and a Gigabyte branded GT720.  In my system currently, I have x1 MSI HD 6450, x1 Sapphire HD 6450, and x1 GT720.  With all three of these devices I can create stock OE VMs for all three, launch all three, and so far I have stress-tested the GT720.  I don't know what the issue is with my batch of MSI branded 6450s, but this combination seems to work really well so far.

 

My only issue at the moment is that DTS-HD and TrueHD audio have a slight glitch / pop every few seconds when using audio-passthrough on OE on the GT720.  I need to investigate and see whats going on there.  I did add the sound.conf setting to fix the crazy audio glitch.  That worked, and I get clean interface sounds, perfect DTS passthrough, and stable playback. 

 

 

 

 

Big thanks to JohnOdon for getting me started on this.  I've gotten part of my setup working, but I've hit a roadblock and can't figure out what I've overlooked.  I've built my system identically to what JohnOdon has, so I know that it is possible, but something is obviously wrong with mine.

 

Specs

I have a SuperMicro X8DTH-iF, which is a dual Xeon CPU, 7-PCIE-slot monster.  I have x3 Radeon 6450 video cards, all brand new and identical.  All show up as available devices, each in their own IOMMU groups.  I've been able to test each individually, in a number of different slots on the board.  I have UnRaid6 running and tried making the stock OpenElec VMs. 

 

What Works

I am able to create and launch the first Open Elec VM, and can get full passthrough and everything works as expected on that VM. I can confirm proper passthrough because I am getting proper video acceleration in OE.

 

Problem

When I create the 2nd, or 3rd OE VM, those DONT work.  I get a blank screen on each, with no logs or errors that I can find that would suggest something is wrong.  This problem is the same with any VM type that I try.  I have created multiple instances of Knoppix and the same situation occurs - only one will run and give me video.  It seems as if the first card that spins up is the only one that will ever work until I reboot and reconfigure.  I can shuffle cards around, but still, the first one to launch is the only one that will work.

 

Config

Each VM is set up as a SeaBios / Q35.2.3, each with their own CPU cores, and each with their own config directories.

 

In my BIOS, I've tried just about every option in there, and none seem to improve this - at least I haven't found the right combination yet. I'd love to compare notes on BIOS settings with someone who has this board, if possible, just to see if the issue is there.

 

I've looked at each XML, and they all point to what I believe is the correct video card.  The XML looks like this:

 

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>OE2</name>
  <uuid>62288c93-4dec-0994-b1ab-da08d6c22f73</uuid>
  <metadata>
    <vmtemplate name="OpenELEC" icon="openelec.png" os="openelec" openelec="5.95.3_1"/>
  </metadata>
  <memory unit='KiB'>524288</memory>
  <currentMemory unit='KiB'>524288</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='12'/>
    <vcpupin vcpu='1' cpuset='13'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.3'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='2' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <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/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/usr/local/emhttp/OpenELEC-unRAID.x86_64-5.95.3_1.img'/>
      <target dev='hda' bus='virtio'/>
      <readonly/>
      <boot order='1'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0' multifunction='on'/>
    </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'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </controller>
    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/mnt/disk1/Share/OE2/'/>
      <target dir='appconfig'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </filesystem>
    <interface type='bridge'>
      <mac address='52:54:00:77:f7:2f'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x02' 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='bind' path='/var/lib/libvirt/qemu/channel/target/OE2.org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x06' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=86:00.0,bus=pcie.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=86:00.1,bus=pcie.0'/>
  </qemu:commandline>
</domain>

 

In this example, 86:00.0 and 86:00.1 are the video and audio portion of the card. 

 

04:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
04:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
83:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
83:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
86:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
86:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]

 

My IOMMU groups look like this:

/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:03.0
/sys/kernel/iommu_groups/3/devices/0000:00:05.0
/sys/kernel/iommu_groups/4/devices/0000:00:07.0
/sys/kernel/iommu_groups/5/devices/0000:00:09.0
/sys/kernel/iommu_groups/6/devices/0000:00:13.0
/sys/kernel/iommu_groups/7/devices/0000:00:14.0
/sys/kernel/iommu_groups/7/devices/0000:00:14.1
/sys/kernel/iommu_groups/7/devices/0000:00:14.2
/sys/kernel/iommu_groups/7/devices/0000:00:14.3
/sys/kernel/iommu_groups/8/devices/0000:00:16.0
/sys/kernel/iommu_groups/8/devices/0000:00:16.1
/sys/kernel/iommu_groups/8/devices/0000:00:16.2
/sys/kernel/iommu_groups/8/devices/0000:00:16.3
/sys/kernel/iommu_groups/8/devices/0000:00:16.4
/sys/kernel/iommu_groups/8/devices/0000:00:16.5
/sys/kernel/iommu_groups/8/devices/0000:00:16.6
/sys/kernel/iommu_groups/8/devices/0000:00:16.7
/sys/kernel/iommu_groups/9/devices/0000:00:1a.0
/sys/kernel/iommu_groups/9/devices/0000:00:1a.1
/sys/kernel/iommu_groups/9/devices/0000:00:1a.7
/sys/kernel/iommu_groups/10/devices/0000:00:1d.0
/sys/kernel/iommu_groups/10/devices/0000:00:1d.1
/sys/kernel/iommu_groups/10/devices/0000:00:1d.2
/sys/kernel/iommu_groups/10/devices/0000:00:1d.7
/sys/kernel/iommu_groups/11/devices/0000:00:1e.0
/sys/kernel/iommu_groups/11/devices/0000:07:04.0
/sys/kernel/iommu_groups/12/devices/0000:00:1f.0
/sys/kernel/iommu_groups/12/devices/0000:00:1f.2
/sys/kernel/iommu_groups/12/devices/0000:00:1f.3
/sys/kernel/iommu_groups/13/devices/0000:01:00.0
/sys/kernel/iommu_groups/14/devices/0000:01:00.1
/sys/kernel/iommu_groups/15/devices/0000:04:00.0
/sys/kernel/iommu_groups/15/devices/0000:04:00.1
/sys/kernel/iommu_groups/16/devices/0000:80:00.0
/sys/kernel/iommu_groups/17/devices/0000:80:01.0
/sys/kernel/iommu_groups/18/devices/0000:80:03.0
/sys/kernel/iommu_groups/19/devices/0000:80:05.0
/sys/kernel/iommu_groups/20/devices/0000:80:07.0
/sys/kernel/iommu_groups/21/devices/0000:80:09.0
/sys/kernel/iommu_groups/22/devices/0000:80:13.0
/sys/kernel/iommu_groups/23/devices/0000:80:14.0
/sys/kernel/iommu_groups/23/devices/0000:80:14.1
/sys/kernel/iommu_groups/23/devices/0000:80:14.2
/sys/kernel/iommu_groups/23/devices/0000:80:14.3
/sys/kernel/iommu_groups/24/devices/0000:80:16.0
/sys/kernel/iommu_groups/24/devices/0000:80:16.1
/sys/kernel/iommu_groups/24/devices/0000:80:16.2
/sys/kernel/iommu_groups/24/devices/0000:80:16.3
/sys/kernel/iommu_groups/24/devices/0000:80:16.4
/sys/kernel/iommu_groups/24/devices/0000:80:16.5
/sys/kernel/iommu_groups/24/devices/0000:80:16.6
/sys/kernel/iommu_groups/24/devices/0000:80:16.7
/sys/kernel/iommu_groups/25/devices/0000:83:00.0
/sys/kernel/iommu_groups/25/devices/0000:83:00.1
/sys/kernel/iommu_groups/26/devices/0000:86:00.0
/sys/kernel/iommu_groups/26/devices/0000:86:00.1
/sys/kernel/iommu_groups/27/devices/0000:fe:00.0
/sys/kernel/iommu_groups/27/devices/0000:fe:00.1
/sys/kernel/iommu_groups/28/devices/0000:fe:02.0
/sys/kernel/iommu_groups/28/devices/0000:fe:02.1
/sys/kernel/iommu_groups/28/devices/0000:fe:02.2
/sys/kernel/iommu_groups/28/devices/0000:fe:02.3
/sys/kernel/iommu_groups/28/devices/0000:fe:02.4
/sys/kernel/iommu_groups/28/devices/0000:fe:02.5
/sys/kernel/iommu_groups/29/devices/0000:fe:03.0
/sys/kernel/iommu_groups/29/devices/0000:fe:03.1
/sys/kernel/iommu_groups/29/devices/0000:fe:03.2
/sys/kernel/iommu_groups/29/devices/0000:fe:03.4
/sys/kernel/iommu_groups/30/devices/0000:fe:04.0
/sys/kernel/iommu_groups/30/devices/0000:fe:04.1
/sys/kernel/iommu_groups/30/devices/0000:fe:04.2
/sys/kernel/iommu_groups/30/devices/0000:fe:04.3
/sys/kernel/iommu_groups/31/devices/0000:fe:05.0
/sys/kernel/iommu_groups/31/devices/0000:fe:05.1
/sys/kernel/iommu_groups/31/devices/0000:fe:05.2
/sys/kernel/iommu_groups/31/devices/0000:fe:05.3
/sys/kernel/iommu_groups/32/devices/0000:fe:06.0
/sys/kernel/iommu_groups/32/devices/0000:fe:06.1
/sys/kernel/iommu_groups/32/devices/0000:fe:06.2
/sys/kernel/iommu_groups/32/devices/0000:fe:06.3
/sys/kernel/iommu_groups/33/devices/0000:ff:00.0
/sys/kernel/iommu_groups/33/devices/0000:ff:00.1
/sys/kernel/iommu_groups/34/devices/0000:ff:02.0
/sys/kernel/iommu_groups/34/devices/0000:ff:02.1
/sys/kernel/iommu_groups/34/devices/0000:ff:02.2
/sys/kernel/iommu_groups/34/devices/0000:ff:02.3
/sys/kernel/iommu_groups/34/devices/0000:ff:02.4
/sys/kernel/iommu_groups/34/devices/0000:ff:02.5
/sys/kernel/iommu_groups/35/devices/0000:ff:03.0
/sys/kernel/iommu_groups/35/devices/0000:ff:03.1
/sys/kernel/iommu_groups/35/devices/0000:ff:03.2
/sys/kernel/iommu_groups/35/devices/0000:ff:03.4
/sys/kernel/iommu_groups/36/devices/0000:ff:04.0
/sys/kernel/iommu_groups/36/devices/0000:ff:04.1
/sys/kernel/iommu_groups/36/devices/0000:ff:04.2
/sys/kernel/iommu_groups/36/devices/0000:ff:04.3
/sys/kernel/iommu_groups/37/devices/0000:ff:05.0
/sys/kernel/iommu_groups/37/devices/0000:ff:05.1
/sys/kernel/iommu_groups/37/devices/0000:ff:05.2
/sys/kernel/iommu_groups/37/devices/0000:ff:05.3
/sys/kernel/iommu_groups/38/devices/0000:ff:06.0
/sys/kernel/iommu_groups/38/devices/0000:ff:06.1
/sys/kernel/iommu_groups/38/devices/0000:ff:06.2
/sys/kernel/iommu_groups/38/devices/0000:ff:06.3

Link to comment

First and foremost, thank you for the very thorough write up / description of your issue.  Each section had purpose and was straight to the point.  Getting well organized information is always helpful in diagnosing issues.  Now let's see if we can't get things working for you.

 

First and foremost, when you boot up the system with all these GPUs attached, do you have a monitor attached to the embedded graphics device on that motherboard?  What I'm trying to make sure is that you are not using any of the radeon cards to output the console display for unRAID itself, but rather, use the on-board graphics to do that, leaving the other cards for use with unRAID.  The BIOS setting for this on your motherboard is called Boot Graphics Adapter Priority and it should be set to Onboard VGA.

 

Another question, does it matter which one of the three cards you use to start your first VM?

 

A few more things you can try:

 

1 - Try using OVMF instead of SeaBIOS for OpenELEC and see if that changes anything.

2 - Check to see if there is a motherboard BIOS update available and if so, update it.

3 - Have you tried passing the ROM files for the graphics cards through using the guide in the wiki?

 

The wiki guide for doing #3 is here:  http://lime-technology.com/wiki/index.php/UnRAID_6/VM_Management#Edit_XML_for_VM_to_supply_GPU_ROM_manually

 

Another thing you can do if none of the above works is to reply with your system diagnostics.  You do this by going to the Tools -> Diagnostics page and clicking Download.

Link to comment

Hi!

 

Onboard VGA vs Cards

Initially, I had the onboard VGA hooked up to a monitor for the console display, with an additional monitor set up for the other cards.  I would start up the VMs and connect them each to the monitor to see if they worked.  That's how I was testing initially.  Same result, one of them would work, the others were blank.  Now, I disabled the onboard VGA, and used one of the cards in PCI slot7.  When UnRaid boots up, I can see the console.  If I want to start up a VM and use that card, it actually switches over nice and clean.  But again, none of the other cards will work at that point.  If I keep the console displayed on one of my cards, I can't start up a VM on any of the others.

 

I believe I've worked through all the cards to make sure they all individually work.  I've tried so many combinations of slots and cards and VMs at this point I wonder if I've just confused the system.  :o

 

OVMF vs SEA BIOS

If I switch the VMs to OVMF, the results are slightly different.  I do actually get a display on two screens simultaneously, but the boot-up hangs with an error message about the XORG SERVER not starting.  I don't know the exact syntax of the message, but there is a console that is displayed before OE starts up - and both VMs will hang on that screen with an XORG Server error.  This is actually the only time I have ever had multiple displays working at the same time.

 

ROM

I did actually try passing the ROM in the XML file.  It gave an error on that one - I'll have to go back and capture the error, but I know it failed there.

 

Here is the only thing that appears in the log when I start a VM:

2015-09-22 04:29:03.982+0000: starting up libvirt version: 1.2.18, qemu version: 2.3.0
Domain id=1 is tainted: high-privileges
Domain id=1 is tainted: custom-argv
Domain id=1 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)

 

Diagnostics

I've attached the zip to this message.  Hopefully it sheds some light.  Thankful for any help I can get!

 

 

First and foremost, thank you for the very thorough write up / description of your issue.  Each section had purpose and was straight to the point.  Getting well organized information is always helpful in diagnosing issues.  Now let's see if we can't get things working for you.

 

First and foremost, when you boot up the system with all these GPUs attached, do you have a monitor attached to the embedded graphics device on that motherboard?  What I'm trying to make sure is that you are not using any of the radeon cards to output the console display for unRAID itself, but rather, use the on-board graphics to do that, leaving the other cards for use with unRAID.  The BIOS setting for this on your motherboard is called Boot Graphics Adapter Priority and it should be set to Onboard VGA.

 

Another question, does it matter which one of the three cards you use to start your first VM?

 

A few more things you can try:

 

1 - Try using OVMF instead of SeaBIOS for OpenELEC and see if that changes anything.

2 - Check to see if there is a motherboard BIOS update available and if so, update it.

3 - Have you tried passing the ROM files for the graphics cards through using the guide in the wiki?

 

The wiki guide for doing #3 is here:  http://lime-technology.com/wiki/index.php/UnRAID_6/VM_Management#Edit_XML_for_VM_to_supply_GPU_ROM_manually

 

Another thing you can do if none of the above works is to reply with your system diagnostics.  You do this by going to the Tools -> Diagnostics page and clicking Download.

tower-diagnostics-20150922-0031.zip

Link to comment

 

 

I believe I've worked through all the cards to make sure they all individually work.  I've tried so many combinations of slots and cards and VMs at this point I wonder if I've just confused the system.  :o

 

Don't worry, you can't confuse the system or anything like that. ;-)

 

OVMF vs SEA BIOS

If I switch the VMs to OVMF, the results are slightly different.  I do actually get a display on two screens simultaneously, but the boot-up hangs with an error message about the XORG SERVER not starting.  I don't know the exact syntax of the message, but there is a console that is displayed before OE starts up - and both VMs will hang on that screen with an XORG Server error.  This is actually the only time I have ever had multiple displays working at the same time.

 

Ok that's a good sign. This means you are having an issue with VGA arbitration but OVMF doesn't use VGA, so we can overcome this.  If you try the ROM file with OVMF mode, OpenELEC should work just fine.  Have you tried your knoppix VM with OVMF? You'd have to install it from scratch, but I'd bet other VMs would work ok.

ROM

I did actually try passing the ROM in the XML file.  It gave an error on that one - I'll have to go back and capture the error, but I know it failed there.

 

Ok please do and capture what error you receive. I've seen multiple instances of AMD cards still needing this ROM file to be specified and I bet this is another example of one of those.  If we can confirm, I can get the necessary information to the upstream to see if this is fixable in a future patch.

 

Here is the only thing that appears in the log when I start a VM:

2015-09-22 04:29:03.982+0000: starting up libvirt version: 1.2.18, qemu version: 2.3.0
Domain id=1 is tainted: high-privileges
Domain id=1 is tainted: custom-argv
Domain id=1 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)

 

Nothing out of the ordinary there.  Typically when GPU pass through doesn't work like this (black screen), the logs are not going to reveal anything.

 

Diagnostics

I've attached the zip to this message.  Hopefully it sheds some light.  Thankful for any help I can get!

 

Bottom line:  your motherboard and processors clearly aren't the issue.  The GPUs however may be suspect. Can you provide the exact make model brand info (part number would be nice) of the 6450s you are using?

Link to comment

The video cards are MSI Radeon HD 6450 R6450-2GD3H/LP 2GB 64-Bit DDR3 PCI Express 2.0 x16 - http://www.newegg.com/Product/Product.aspx?Item=N82E16814127738

 

Now, that said - the motherboard PCIE slots are x8 (in x16 slot size).  Would that cause an issue? - http://www.supermicro.com/products/motherboard/QPI/5500/X8DTH-iF.cfm

 

 

 

I believe I've worked through all the cards to make sure they all individually work.  I've tried so many combinations of slots and cards and VMs at this point I wonder if I've just confused the system.  :o

 

Don't worry, you can't confuse the system or anything like that. ;-)

 

OVMF vs SEA BIOS

If I switch the VMs to OVMF, the results are slightly different.  I do actually get a display on two screens simultaneously, but the boot-up hangs with an error message about the XORG SERVER not starting.  I don't know the exact syntax of the message, but there is a console that is displayed before OE starts up - and both VMs will hang on that screen with an XORG Server error.  This is actually the only time I have ever had multiple displays working at the same time.

 

Ok that's a good sign. This means you are having an issue with VGA arbitration but OVMF doesn't use VGA, so we can overcome this.  If you try the ROM file with OVMF mode, OpenELEC should work just fine.  Have you tried your knoppix VM with OVMF? You'd have to install it from scratch, but I'd bet other VMs would work ok.

ROM

I did actually try passing the ROM in the XML file.  It gave an error on that one - I'll have to go back and capture the error, but I know it failed there.

 

Ok please do and capture what error you receive. I've seen multiple instances of AMD cards still needing this ROM file to be specified and I bet this is another example of one of those.  If we can confirm, I can get the necessary information to the upstream to see if this is fixable in a future patch.

 

Here is the only thing that appears in the log when I start a VM:

2015-09-22 04:29:03.982+0000: starting up libvirt version: 1.2.18, qemu version: 2.3.0
Domain id=1 is tainted: high-privileges
Domain id=1 is tainted: custom-argv
Domain id=1 is tainted: host-cpu
char device redirected to /dev/pts/0 (label charserial0)

 

Nothing out of the ordinary there.  Typically when GPU pass through doesn't work like this (black screen), the logs are not going to reveal anything.

 

Diagnostics

I've attached the zip to this message.  Hopefully it sheds some light.  Thankful for any help I can get!

 

Bottom line:  your motherboard and processors clearly aren't the issue.  The GPUs however may be suspect. Can you provide the exact make model brand info (part number would be nice) of the 6450s you are using?

Link to comment

 

 

The video cards are MSI Radeon HD 6450 R6450-2GD3H/LP 2GB 64-Bit DDR3 PCI Express 2.0 x16 - http://www.newegg.com/Product/Product.aspx?Item=N82E16814127738

 

Thanks!  Once we figure out what we can make happen, we will use this info to report it to the upstream.

 

Now, that said - the motherboard PCIE slots are x8 (in x16 slot size).  Would that cause an issue? - http://www.supermicro.com/products/motherboard/QPI/5500/X8DTH-iF.cfm

 

Nope, not a problem at all. The bandwidth required even for the highest end GPUs comes nowhere near the bandwidth of an 8x PCI slot. 

 

This is further proven by the fact that you HAVE gotten this to work with OVMF and multiple GPUs. The xorg error message you received is something else.  The fact is that graphics hit the displays as intended.

Link to comment

Silly question(s)...

 

You are able to start/view VM1 but not VM2 or VM3.

 

Can you Start/view VM2 or VM3 while the other 2 are shutdown?

 

Also, I'm not sure I understand the issue:  Is it that the 2nd VM wil not start (no green arrow), or, it starts but does not output video?

 

For reference, here are the XMLs for my 3 OE VMs.  Just remember...I am manually installing OE 5.0.8 in a VM rather than use the templates offered by LT due to some issues I am facing with the latest OE betas.  For this reason, you will see my disk controller using SATA and the NIC using e1000 rather than virtio.  Can you post all 3 of your XMLs?

 

<domain type='kvm' id='3' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>HTPCBASEMENT</name>
  <uuid>9aba6d85-c606-911a-0468-65496bb98d54</uuid>
  <description>HTPC in Basement</description>
  <metadata>
    <vmtemplate name="Custom" icon="openelec.png" os="openelec"/>
  </metadata>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='10'/>
    <vcpupin vcpu='1' cpuset='11'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-2.3'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='2' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <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/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/VMs/HTPCBASEMENT/vdisk1.img'/>
      <backingStore/>
      <target dev='hda' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:69:ce:98'/>
      <source bridge='br0'/>
      <target dev='vnet2'/>
      <model type='e1000'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/2'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/2'>
      <source path='/dev/pts/2'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/HTPCBASEMENT.org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='3' device='2'/>
      </source>
      <alias name='hostdev0'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=84:00.0,bus=pcie.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=84:00.1,bus=pcie.0'/>
  </qemu:commandline>
</domain>

 

 

<domain type='kvm' id='2' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>HTPCFAMILYRM</name>
  <uuid>2db7ab85-5aed-afbf-ee91-a7369bd5637a</uuid>
  <description>HTPC in Family Room</description>
  <metadata>
    <vmtemplate name="Custom" icon="openelec.png" os="openelec"/>
  </metadata>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='14'/>
    <vcpupin vcpu='1' cpuset='15'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-2.3'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='2' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <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/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/VMs/HTPCFAMILYRM/vdisk1.img'/>
      <backingStore/>
      <target dev='hda' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:c9:9c:ba'/>
      <source bridge='br0'/>
      <target dev='vnet1'/>
      <model type='e1000'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/1'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/1'>
      <source path='/dev/pts/1'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/HTPCFAMILYRM.org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='2' device='6'/>
      </source>
      <alias name='hostdev0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='yes'>
      <source>
        <vendor id='0x045e'/>
        <product id='0x0291'/>
        <address bus='8' device='2'/>
      </source>
      <alias name='hostdev1'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=83:00.0,bus=pcie.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=83:00.1,bus=pcie.0'/>
  </qemu:commandline>
</domain>

 

 

<domain type='kvm' id='1' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>HTPCPLAYRM</name>
  <uuid>4b4d8b1a-49a9-9e22-6ebe-6a8749c0a234</uuid>
  <description>HTPC in Playroom</description>
  <metadata>
    <vmtemplate name="Custom" icon="openelec.png" os="openelec"/>
  </metadata>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='12'/>
    <vcpupin vcpu='1' cpuset='13'/>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <os>
    <type arch='x86_64' machine='pc-q35-2.3'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='2' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <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/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/VMs/HTPCPLAYRM/vdisk1.img'/>
      <backingStore/>
      <target dev='hda' bus='sata'/>
      <boot order='1'/>
      <alias name='sata0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <alias name='usb'/>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0' multifunction='on'/>
    </controller>
    <controller type='sata' index='0'>
      <alias name='ide'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'>
      <alias name='pcie.0'/>
    </controller>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <alias name='pci.1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <alias name='pci.2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:17:ea:29'/>
      <source bridge='br0'/>
      <target dev='vnet0'/>
      <model type='e1000'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </interface>
    <serial type='pty'>
      <source path='/dev/pts/0'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <console type='pty' tty='/dev/pts/0'>
      <source path='/dev/pts/0'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='unix'>
      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/HTPCPLAYRM.org.qemu.guest_agent.0'/>
      <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='2' device='4'/>
      </source>
      <alias name='hostdev0'/>
    </hostdev>
    <memballoon model='virtio'>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=86:00.0,bus=pcie.0,multifunction=on,x-vga=on'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=86:00.1,bus=pcie.0'/>
  </qemu:commandline>
</domain>

Link to comment

Also RE: this...

 

    <filesystem type='mount' accessmode='passthrough'>
      <source dir='/mnt/disk1/Share/OE2/'/>
      <target dir='appconfig'/>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/>
    </filesystem>

 

You are pointing each OE to its own folder, right?  The fact that you named the folder OE2, I assume so but figured I would ask.

 

John

Link to comment

I know I had the same issue before (early on) that you are experiencing but I can't remember what it was.  I think it was the changes I had to make to teh syslinux.cfg but we already went over that in PM.  If you want to mimic exactly what I am doing (which is working), here are the slot assignments for my controllers and GPUs:

 

04:00.0 RAID bus controller: Marvell Technology Group Ltd. MV64460/64461/64462 System Controller, Revision B (rev 01)
05:00.0 RAID bus controller: Marvell Technology Group Ltd. MV64460/64461/64462 System Controller, Revision B (rev 01)
83:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
83:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
84:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
84:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
86:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
86:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]

Link to comment

Thanks guys, for helping out.  I might have found something, but not sure how to track it down.

 

Update - Partially working setup:

My best configuration is with the onboard VGA enabled for console, and three video cards in slots 84,85,86.  I have three VMs: OE1, OE2, OE3.  They are each assigned a card.

 

I started up OE1, and my console screen showed a PXE boot message, while my secondary display actually showed OpenElec.  Working!

 

I started up OE2, and my console screen showed the same PXE boot message, while my secondary display showed OpenElec.  Working!

 

So that's two simultaneous VMs running correctly.

 

When I started up OE3, I got nothing.  No log, no video.  So that's two out of three.

 

Tests

I decided to switch the cards around to match Johnodon's setup (83,84,86), and while booting I happened to see some errors come across the screen while UnRaid was starting up.

 

Sep 22 13:57:37 Tower kernel: pci 0000:80:09.0: BAR 13: no space for [io  size 0x1000]
Sep 22 13:57:37 Tower kernel: pci 0000:80:09.0: BAR 13: failed to assign [io  size 0x1000]
Sep 22 13:57:37 Tower kernel: pci 0000:80:00.0: PCI bridge to [bus 81]
Sep 22 13:57:37 Tower kernel: pci 0000:80:01.0: PCI bridge to [bus 82]
Sep 22 13:57:37 Tower kernel: pci 0000:80:03.0: PCI bridge to [bus 83]
Sep 22 13:57:37 Tower kernel: pci 0000:80:03.0:   bridge window [io  0xd000-0xdfff]
Sep 22 13:57:37 Tower kernel: pci 0000:80:03.0:   bridge window [mem 0xf8d00000-0xf8dfffff]
Sep 22 13:57:37 Tower kernel: pci 0000:80:03.0:   bridge window [mem 0xb0000000-0xbfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci 0000:80:05.0: PCI bridge to [bus 84]
Sep 22 13:57:37 Tower kernel: pci 0000:80:05.0:   bridge window [io  0xe000-0xefff]
Sep 22 13:57:37 Tower kernel: pci 0000:80:05.0:   bridge window [mem 0xf8e00000-0xf8efffff]
Sep 22 13:57:37 Tower kernel: pci 0000:80:05.0:   bridge window [mem 0xc0000000-0xcfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci 0000:80:07.0: PCI bridge to [bus 85]
Sep 22 13:57:37 Tower kernel: pci 0000:86:00.0: BAR 4: no space for [io  size 0x0100]
Sep 22 13:57:37 Tower kernel: pci 0000:86:00.0: BAR 4: trying firmware assignment [io  size 0x0100]
Sep 22 13:57:37 Tower kernel: pci 0000:86:00.0: BAR 4: [io  size 0x0100] conflicts with PCI Bus 0000:80 [io  0xd000-0xffff window]
Sep 22 13:57:37 Tower kernel: pci 0000:86:00.0: BAR 4: failed to assign [io  size 0x0100]
Sep 22 13:57:37 Tower kernel: pci 0000:80:09.0: PCI bridge to [bus 86]
Sep 22 13:57:37 Tower kernel: pci 0000:80:09.0:   bridge window [mem 0xf8f00000-0xf8ffffff]
Sep 22 13:57:37 Tower kernel: pci 0000:80:09.0:   bridge window [mem 0xd0000000-0xdfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:80: Some PCI device resources are unassigned, try booting with pci=realloc
Sep 22 13:57:37 Tower kernel: pci_bus 0000:80: resource 4 [io  0xd000-0xffff window]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:80: resource 5 [mem 0xb0000000-0xdfffffff window]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:80: resource 6 [mem 0xf0000000-0xf8ffffff window]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:83: resource 0 [io  0xd000-0xdfff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:83: resource 1 [mem 0xf8d00000-0xf8dfffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:83: resource 2 [mem 0xb0000000-0xbfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:84: resource 0 [io  0xe000-0xefff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:84: resource 1 [mem 0xf8e00000-0xf8efffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:84: resource 2 [mem 0xc0000000-0xcfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:86: resource 1 [mem 0xf8f00000-0xf8ffffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:86: resource 2 [mem 0xd0000000-0xdfffffff 64bit pref]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:fe: resource 4 [io  0x0000-0xffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:fe: resource 5 [mem 0x00000000-0xffffffffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:ff: resource 4 [io  0x0000-0xffff]
Sep 22 13:57:37 Tower kernel: pci_bus 0000:ff: resource 5 [mem 0x00000000-0xffffffffff]

 

This looks like something is going wrong during the boot up.  Those BAR4 errors are for one of the  video cards (86).  I have attached the syslog from the most recent boot up.

 

Strange console screen blank out

After reboot and re-setting up the OE VMs, I'm back to everything being broken again.

 

When I start OE1, my console screen blanks out, and i get no video from the card.

When I start OE2, nothing happens at all.

 

I'm going to see if I can set it back up to 83,84,85 and get two of them working again.

 

Johnodon - for clarification, here is the issue:  I can create multiple VMs in UnRaid and assign each a video card+sound card. But when I try to start them, I'm not able to get all of them to display video simultaneously. I can sometimes get one to work.  All of my VMs have been set up using SeaBios and the stock OE VM.

 

My Power Supply is a Seasonic SS-600H2U (http://www.seasonicusa.com/PDF/Catalog/NEW/Bulk/IPC/2U/SS-600H2U-APFC.pdf), because I am using a 2U chassis.

syslog.txt

Link to comment

Update:

I have updated the BIOS of my motherboard to 2.1b, which is the latest version.  My startup log doesn't seem to have the same PCI errors, but there are a few strange ones.  I have attached the latest system log from the point of boot, through trying to start an OpenElec VM.

 

Back to Broken:

Now my problem is that no matter what my primary boot video device is - no other video device will work.  If I launch a VM that is set to use the boot video card - the VM will take it over and work.  None of my other VMs will launch and use their video cards.  I can't get the two to start up like I did before.

 

Any attempt at launching VMs that use extra video cards results in the Console locking up and no VMs launching.  Once I try to launch a VM that has been assigned a video card, my primary console screen is locked, and I can't type in to it anymore.  I have to restart the entire server again.

 

It seems like my primary boot video card gets locked in to a state where no other video cards are allowed to work.  This is the final entry in the log when I attempt to start up my OpenElec VMs. In this scenario 84 is my boot video card, and 03 and 04 are my extra cards.

 

Sep 23 10:35:40 Tower kernel: device vnet0 entered promiscuous mode
Sep 23 10:35:40 Tower kernel: virbr0: port 2(vnet0) entered listening state
Sep 23 10:35:40 Tower kernel: virbr0: port 2(vnet0) entered listening state
Sep 23 10:35:40 Tower kernel: vgaarb: device changed decodes: PCI:0000:03:00.0,olddecodes=io+mem,decodes=io+mem:owns=none
Sep 23 10:35:40 Tower kernel: vgaarb: device changed decodes: PCI:0000:04:00.0,olddecodes=io+mem,decodes=io+mem:owns=none
Sep 23 10:35:40 Tower kernel: vgaarb: device changed decodes: PCI:0000:84:00.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem
Sep 23 10:35:41 Tower kernel: vfio-pci 0000:04:00.0: enabling device (0000 -> 0003)
Sep 23 10:35:42 Tower kernel: virbr0: port 2(vnet0) entered learning state
Sep 23 10:35:43 Tower kernel: vgaarb: device changed decodes: PCI:0000:84:00.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem
Sep 23 10:35:43 Tower kernel: vgaarb: device changed decodes: PCI:0000:04:00.0,olddecodes=io+mem,decodes=io+mem:owns=none
Sep 23 10:35:43 Tower kernel: vgaarb: device changed decodes: PCI:0000:03:00.0,olddecodes=io+mem,decodes=io+mem:owns=none
Sep 23 10:35:44 Tower kernel: virbr0: topology change detected, propagating
Sep 23 10:35:44 Tower kernel: virbr0: port 2(vnet0) entered forwarding state

 

Is it possible that a BIOS setting is causing these issues? (VT-D has always been on)

 

Do I have bad video cards?  All three video cards?  Are there variations in the 6450 series that would make these particular ones not work, but others will?

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.