<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 01/04/2013 08:30 AM, Doug Goldstein
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAFWqQMRJJ1CQjTOwfaymAf4nhRRUWMqwiyX3RwEdLfNnCCu7Sw@mail.gmail.com"
      type="cite">
      <pre wrap="">On Thu, Jan 3, 2013 at 5:58 PM, Zeeshan Ali (Khattak)
<a class="moz-txt-link-rfc2396E" href="mailto:zeeshanak@gnome.org"><zeeshanak@gnome.org></a> wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">On Thu, Jan 3, 2013 at 11:44 PM, Zeeshan Ali (Khattak)
<a class="moz-txt-link-rfc2396E" href="mailto:zeeshanak@gnome.org"><zeeshanak@gnome.org></a> wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">Hi,
  I updated my libvirt git clone and install yesterday (after about a
month or so) and now I can't start domains:

$ virsh start fedora18
error: Failed to start domain fedora18
error: unsupported configuration: This QEMU does not support QXL
graphics adapters

While libvirt is self-built, I'm using qemu 1.2.2-1.fc18 from vanila
Fedora 18 repo. Just to be clear, qemu was not updated before the
problem appeared, only libvirt.

Here is the libvirtd log:
<a class="moz-txt-link-freetext" href="http://static.fi/~zeenix/tmp/libvirtd-session-zeenix.log">http://static.fi/~zeenix/tmp/libvirtd-session-zeenix.log</a> (13 MB).

Also attaching the domain config.
</pre>
        </blockquote>
        <pre wrap="">
If my `git bisect run` script worked, I've found the commit
introducing this issue:

4c993d8ab5473334e9d4155faa913476ada39069 is the first bad commit
commit 4c993d8ab5473334e9d4155faa913476ada39069
Author: Guannan Ren <a class="moz-txt-link-rfc2396E" href="mailto:gren@redhat.com"><gren@redhat.com></a>
Date:   Fri Dec 14 15:06:31 2012 +0800

    qemu: add qemu vga devices caps and one cap to mark them usable

    QEMU_CAPS_DEVICE_QXL          -device qxl
    QEMU_CAPS_DEVICE_VGA          -device VGA
    QEMU_CAPS_DEVICE_CIRRUS_VGA   -device cirrus-vga
    QEMU_CAPS_DEVICE_VMWARE_SVGA  -device vmware-svga

    QEMU_CAPS_DEVICE_VIDEO_PRIMARY  /* safe to use -device XXX
                                     for primary video device */

    Fix a typo in qemuCapsObjectTypes, the string 'qxl' here
    should be -device qxl rather than -vga [...|qxl|..]

:040000 040000 576dc9f1e74fae8b5d8c75349cc769e17c5f7758
5afc50956ad09cf6e740ce75800d746a53513271 M      src
:040000 040000 0b95704f11e9aacbd4c6510e29343a497c52c11e
fbd9445a795a2814d8739805ebaf9c7c2f0d4160 M      tests
bisect run success

FWIW, problem is not reproducible against the parent commit
34ca5684970fc5e4be0ec29809b73dea7be2d84f.

--
Regards,

Zeeshan Ali (Khattak)
FSF member#5124

</pre>
      </blockquote>
      <pre wrap="">
Basically for some reason we tried to build the command line up as
qemu-kvm ... -vga qxl instead of -device qxl-vga which is what I
thought Guannan was aiming for. I could be wrong though. I'll take
another look at it tonight.

</pre>
    </blockquote>
    <br>
            When libvirt reports this error, probably the qemu you are
    using doesn't support<br>
            qxl-vga as the primary video device, and at the same time
    the qemu doesn't <br>
            support "-vga qxl" either.<br>
    <br>
            The reason why libvirt worked out before is that there is a
    typo for the caps flag bit<br>
            QEMU_CAPS_VGA_QXL fixed in the above commit. And libvirt
    didn't set<br>
            QEMU_CAPS_VGA_QXL on for qemu(>1.2) by using QMP mode to
    check for qemu<br>
            capabilities.<br>
    <br>
              -    { "qxl", QEMU_CAPS_VGA_QXL },<br>
             +    { "qxl", QEMU_CAPS_DEVICE_QXL },<br>
    <br>
             So Doug's patch probably could fix your problem
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    temporarily, but we need to think it<br>
             through as Eric said.<br>
    <br>
             Guannan <br>
    <br>
            <br>
    <br>
    <br>
  </body>
</html>