[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] qemu: qxl devices don't support multifunction yet



On 09/19/2011 01:32 PM, Daniel P. Berrange wrote:
On Mon, Sep 19, 2011 at 07:16:22PM +0200, Marc-André Lureau wrote:
Hi hi

On Fri, Sep 16, 2011 at 1:38 PM, Marc-André Lureau<mlureau redhat com>  wrote:
How do we allow other devices to share the slot? It seems to me that
qemuDomainPCIAddressSetNextAddr() only allocate whole slot, while
making sure there is no conflicts on the same slot.
So, if the user wants to use multi function pci device, he should
specify the
pci address.
So adding a check such as:

if (!multiFunc&&  info->addr.pci.function != 0)
   return error("The %s device doesn't support multifunction address")

Wen, does that sound reasonable to you?

Daniel, did you had time to verify that PCI allocation is per-slot?

(It would be nice to get this "workaround" for the next release)
IMHO this kind of hack doesn't belong in libvirt. It is fine for distro
vendors to consider as a one off quick-hack for their packages of libvirt,
if they don't have time to fix the real QXL bug, but not for libvirt
upstream releases. QXL/QEMU should really be fixed since that's where the
problem appears to lie.

As it stands, Fedora 16 (currently using unpatched libvirt-0.9.6) will be going into beta with QXL video broken for Windows guests, so we need some kind of Fedora-only patch very soon (see the schedule here: https://fedoraproject.org/wiki/Releases/16/Schedule - fortunately just delayed another week)

The original patch in this thread:

  https://www.redhat.com/archives/libvir-list/2011-September/msg00534.html

of course doesn't include the above mentioned additional code, and there isn't a followup patch. It would be very good to push a patch to the F16 git for this so it would hopefully get into the beta, but want to make sure what I push is the "right" thing, so a "final" patch (and some testing by people with F16 hosts) would be very helpful!


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]