
On Thu, Nov 05, 2015 at 05:33:52PM +0000, Daniel P. Berrange wrote:
The patches for introducing virtlogd will be significantly simplified if we don't need to worry about parsing stderr during startup. This is required prior to QEMU 0.11 so that we can get the dyanamically allocated /dev/pty/NNN paths.
The QEMU 0.12.1 release was shipped in RHEL-6 vintage distros and is already quite old, so seems like a fair target version to aim for as the minimum required.
By dropping support for anything older than QEMU 0.12.0 we can remove the code for parsing stderr. The QEMU 0.12.0 release was quite special because it was the release where QEMU switched what I call its "modern" approach to configuration via -device. A major part of the complexity of the QEMU command line generator is due to need to support non-device syntax, so by mandating QEMU 0.12.0 we'll be able to kill off alot of conditional code. This series makes a start by assuming existance of 5 features, -vnc, 'info chardev', -no-reboot, -drive and -name, but there are a tonne more we can assume.
Looking at tests/qemuhelptest, we can drop about 30 capability flag tests
QEMU_CAPS_UUID, QEMU_CAPS_MIGRATE_QEMU_TCP, QEMU_CAPS_MIGRATE_QEMU_EXEC, QEMU_CAPS_DRIVE_CACHE_V2, QEMU_CAPS_DRIVE_FORMAT, QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_DRIVE_READONLY, QEMU_CAPS_VGA, QEMU_CAPS_0_10, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_SDL, QEMU_CAPS_XEN_DOMID, QEMU_CAPS_MIGRATE_QEMU_UNIX, QEMU_CAPS_CHARDEV, QEMU_CAPS_BALLOON, QEMU_CAPS_DEVICE, QEMU_CAPS_SMP_TOPOLOGY, QEMU_CAPS_RTC, QEMU_CAPS_NO_HPET, QEMU_CAPS_BOOT_MENU, QEMU_CAPS_NAME_PROCESS, QEMU_CAPS_SMBIOS_TYPE, QEMU_CAPS_VGA_NONE, QEMU_CAPS_MIGRATE_QEMU_FD, QEMU_CAPS_DRIVE_AIO, QEMU_CAPS_NO_SHUTDOWN, QEMU_CAPS_PCI_ROMBAR, QEMU_CAPS_NO_ACPI, QEMU_CAPS_VIRTIO_BLK_SG_IO, QEMU_CAPS_CPU_HOST, QEMU_CAPS_VNC
The only slow complication is that some non-x86 architectures were slow in converting to -device syntax, so we cannot entirely assume -device is used everywhere.
I'm going to rebase this series on top of https://www.redhat.com/archives/libvir-list/2015-November/msg00210.html as it is proving far too horrific to modify the existing .args files to add new args, while keeping the line wrapping sane. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|