<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Sun, Sep 13, 2015 at 9:08 PM, Phill Edwards <span dir="ltr"><<a href="mailto:philledwards@gmail.com" target="_blank">philledwards@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">The short answer is that you cannot do what you want to do and it's a<br>
hardware limitation of conventional PCI that prevents it.  The QEMU<br>
invocation is telling you how to fix it:<br>
<span><br>
"vfio: error, group 11 is not viable, please ensure all devices within<br>
the iommu_group are bound to their vfio bus driver."<br>
<br>
</span>and the blog post about IOMMU groups[1], that I already pointed you to<br>
in the blog comments, tells you why.  So, you can either choose to bind<br>
your NICs at 05:00.0 and 05:00.1 to pci-stub or vfio-pci or replace it<br>
with a PCIe NIC or replace your DVB-T card with a PCIe version or maybe<br>
get a PCIe-to-PCI adapter and move one of the cards somewhere else.<br>
<br>
Conventional PCI does not include a requester ID in bus transactions.<br>
The requester ID is what the IOMMU uses to lookup the translations for a<br>
device.  In this case the PCIe-to-PCI bridge (00:1e.0) adds the<br>
requester ID, which means that the IOMMU cannot differentiate between<br>
the devices on bus 05.  The ACS override patches will not help you here.<br>
The old pci-assign driver will let you assign these devices separately,<br>
but it will fail spectacularly as your NICs suddenly get their DMA<br>
mappings replaced with the I/O virtual address space of the VM.  Ok, it<br>
won't be that spectacular, but it won't work.<br>
<br>
So to repeat, in the existing configuration, your only option is to give<br>
up use of the NICs at 05:00.x by binding them to either pci-stub or<br>
vfio-pci.  <br>
<br></blockquote><div><br></div></span></div></div></div></blockquote><div><br></div><div class="gmail_quote">Thanks for this info. When you say "<i>give up</i> use of the NICs at 05:00.x by binding them to either pci-stub or vfio-pci" does that mean that the NICs won't work any more? If they will still work and it will allow me to have the DVB-T card in an IOMMU group of it's own that sounds like a good solution. Does it matter whether I bind them to pci-stub or vfio-pci - are there implications to binding to one rather than the other?</div><div class="gmail_quote"><br></div><div class="gmail_quote">Also, do I achieve the binding by adding something like this to GRUB_CMDLINE_LINUX?</div><div class="gmail_quote"><span style="font-family:monospace,monospace;font-size:12.8px">pci-stub.ids=</span><font face="monospace, monospace"><span style="font-size:12.8px">0e11:00db</span></font><br></div><div class="gmail_quote"><font face="monospace, monospace"><span style="font-size:12.8px"><br></span></font></div><div><span style="font-family:arial,helvetica,sans-serif;font-size:12.8px">Sorry to ask all these questions but I'm quite out of my depth here.</span> </div></div></div></div>