On 08/12/11 16:18, Christophe Fergeau wrote:
On Fri, Aug 12, 2011 at 04:53:04PM +0300, Alon Levy wrote:
> I don't know when libvirt started adding mf=on.
For what it's worth, this was added in
[ adding libvirt list to cc: ]
commit 9f8baf646ea44aa2de47cba5002af39a7ab1ac08
Author: Wen Congyang<wency(a)cn.fujitsu.com>
Date: Mon May 23 14:42:21 2011 +0800
support multifunction PCI device
If qemu supports multi function PCI device, the format of the PCI address passed
to qemu is "bus=pci.0,multifunction=on,addr=slot.function".
If qemu does not support multi function PCI device, the format of the PCI address
passed to qemu is "bus=pci.0,addr=slot".
Hmm, from a bief scan it looks like that patch adds multifunction=on
unconditionally in case qemu supports that. That is wrong IMHO.
libvirt should only do that in case the pci slot in question actually
has multiple functions. There is another condition which the patch
doesn't check for: you always must have a $slot.0 function, you can't
have a multifunction device with -- say -- functions 1 and 2 being used.
cheers,
Gerd