[libvirt] [PATCH] qemu: Use -vga none only if it is supported
Jiri Denemark
jdenemar at redhat.com
Wed Dec 8 15:49:47 UTC 2010
> > @@ -1252,11 +1253,15 @@ static unsigned long long qemudComputeCmdFlags(const char *help,
> > if (strstr(help, "readonly="))
> > flags |= QEMUD_CMD_FLAG_DRIVE_READONLY;
> > }
> > - if (strstr(help, "-vga") && !strstr(help, "-std-vga")) {
> > + if ((p = strstr(help, "-vga")) && !strstr(help, "-std-vga")) {
>
> I think this can be simplified to work via a single scan, rather than
> having to do a second scan to filter out the older -std-vga:
>
> if ((p = strstr(help, "\n-vga") != NULL) {
Hmm, it's not exactly the same thing. In case there were both "-vga" and
"-std-vga" present, the new condition would return true while the original
would fail. I doubt there is a qemu version out there which would provide both
but to be safe I will leave it as is.
> > flags |= QEMUD_CMD_FLAG_VGA;
> >
> > if (strstr(help, "|qxl"))
> > flags |= QEMUD_CMD_FLAG_VGA_QXL;
>
> Ouch - we don't have anything in tests/qemuhelpdata/ that tests this
> line of code. But that's an independent problem.
>
> Meanwhile, that could be made more efficient via strstr(p, "|qxl") (no
> need to reparse the chunk between help and p).
Yeah, makes sense. I'll change this.
> > + if ((p = strstr(p, "|none")) && p < nl)
> > + flags |= QEMUD_CMD_FLAG_VGA_NONE;
>
> qemu -help parsing is so brittle. But this looks correct.
>
> ACK - I can live with the patch as-is (since you want to backport it
> rapidly to RHEL); or you can take the time to make the tweaks above.
Thanks, I made the small change above and pushed.
Jirka
More information about the libvir-list
mailing list