<div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace;font-size:small;color:rgb(11,83,148)">Hello list!</div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:small;color:rgb(11,83,148)"><br></div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:small;color:rgb(11,83,148)">I'm new here and interested in hot-plug multi-function PCI devices. Basically I'd like to know why Libvirt does not support it. I've been through the archives and basically found this thread:</div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:small;color:rgb(11,83,148)"><br></div><div class="gmail_default"><font color="#0b5394" face="courier new, monospace"><a href="https://www.redhat.com/archives/libvir-list/2011-May/msg00457.html" target="_blank">https://www.redhat.com/archives/libvir-list/2011-May/msg00457.html</a></font><br></div><div class="gmail_default"><br></div><div class="gmail_default"><font color="#0b5394" face="courier new, monospace">But Qemu seems to handle it accordingly:</font></div><div class="gmail_default"><font color="#0b5394" face="courier new, monospace"><div class="gmail_default">virsh qemu-monitor-command --hmp fedora-23 'device_add vfio-pci,host=00:16.0,addr=08.0'</div><div class="gmail_default">virsh qemu-monitor-command --hmp fedora-23 'device_add vfio-pci,host=00:16.3,addr=08.3'</div><div class="gmail_default"><br></div><div class="gmail_default">GUEST:</div><div class="gmail_default"><div class="gmail_default"># lspci</div><div class="gmail_default">(snip)</div><div class="gmail_default">00:08.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)<br></div><div class="gmail_default">00:08.3 Serial controller: Intel Corporation 8 Series HECI KT (rev 04)</div><div><br></div></div><div class="gmail_default">However, using Libvirt:<br></div><div class="gmail_default"><br></div><div class="gmail_default"><div class="gmail_default">% virsh attach-device fedora-23 pci_0000_00_16_0.xml --live</div><div class="gmail_default">Device attached successfully</div><div class="gmail_default"><br></div><div class="gmail_default">% virsh attach-device fedora-23 pci_0000_00_16_3.xml --live<br></div><div class="gmail_default">error: Failed to attach device from pci_0000_00_16_3.xml</div><div class="gmail_default">error: internal error: Only PCI device addresses with function=0 are supported</div><div><br></div><div>I made some changes on domain_addr.c[1] for testing and it worked.</div><div><br></div><div>[1]<a href="https://gist.github.com/jrziviani/1da184c7fd0b413e0426">https://gist.github.com/jrziviani/1da184c7fd0b413e0426</a></div><div><br></div><div><div>% virsh attach-device fedora-23 pci_0000_00_16_3.xml --live</div><div>Device attached successfully</div></div><div><br></div><div><div class="gmail_default">GUEST:</div><div class="gmail_default"><div class="gmail_default"># lspci</div><div class="gmail_default">(snip)</div><div class="gmail_default">00:08.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)<br></div><div class="gmail_default">00:08.3 Serial controller: Intel Corporation 8 Series HECI KT (rev 04)</div><div class="gmail_default"><br></div><div class="gmail_default">So there is more to it that I'm not aware?</div></div></div><div><br></div><div>Thank you!<br></div></div></font></div></div>