[libvirt] [PATCH 00/12] qemu: support chardev for all machvirt config

Drew pointed out that we can use -chardev with machvirt platform serial devices like: -chardev pty,id=foo -serial chardev:foo And indeed it looks like qemu has supported this for as long as -chardev has been around. Wiring this up will enable all the modern -chardev features for every machvirt config (and some other arch/machine types). However just enabling that change is going to cause a lot of unneeded test suite churn, due to the fact that some code is still checking for qemu -chardev support, even though our minimum qemu version always has chardev nowadays. So take the opportunity to exorcise QEMU_CAPS_CHARDEV * Patch 1 reverts Christopher's recent patch, to unbreak existing configs * Patch 2-3 make pci-serial work for machvirt and demonstrate it with a test suite change. * Patch 4-10 slowly strip out QEMU_CAPS_DEVICE * Patch 11 adds -chardev support for platform serial devices * Patch 12 is a cleanup Cole Robinson (12): Revert "qemu: Support chardevs with ARM virt machines" qemu: caps: Tweak arm conditional in SupportsChardev tests: qemuxml2argv: Add an aarch64 pci-serial test qemu: command: Remove old style -parallel building qemu: command: Drop some QEMU_CAPS_CHARDEV checks qemu: command: always use -chardev for monitor config tests: qemuxml2argv: drop redundant serial testing tests: qemuxml2argv: Drop old style serial testing tests: qemuxml2argv: Add some QEMU_CAPS_CHARDEV annotations qemu: caps: blacklist QEMU_CAPS_CHARDEV qemu: command: support -chardev for platform devices qemu: Rename SupportsChardev to IsPlatformDevice src/qemu/qemu_capabilities.c | 46 +--- src/qemu/qemu_capabilities.h | 6 +- src/qemu/qemu_command.c | 243 ++++++--------------- src/qemu/qemu_process.c | 9 +- tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml | 1 - .../caps_2.6.0-gicv2.aarch64.xml | 1 - .../caps_2.6.0-gicv3.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml | 1 - tests/qemuhelptest.c | 5 - .../qemuxml2argv-aarch64-aavmf-virtio-mmio.args | 4 +- .../qemuxml2argv-aarch64-acpi-uefi.args | 4 +- .../qemuxml2argv-aarch64-cpu-passthrough.args | 4 +- .../qemuxml2argv-aarch64-gic-host.args | 4 +- .../qemuxml2argv-aarch64-gic-none-tcg.args | 4 +- .../qemuxml2argv-aarch64-gic-v2.args | 4 +- .../qemuxml2argv-aarch64-gic-v3.args | 4 +- .../qemuxml2argv-aarch64-kvm-32-on-64.args | 7 +- .../qemuxml2argv-aarch64-noacpi-nouefi.args | 4 +- .../qemuxml2argv-aarch64-noacpi-uefi.args | 4 +- .../qemuxml2argv-aarch64-pci-serial.args | 26 +++ .../qemuxml2argv-aarch64-pci-serial.xml | 17 ++ ...muxml2argv-aarch64-usb-controller-nec-xhci.args | 4 +- ...uxml2argv-aarch64-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-aarch64-video-virtio-gpu-pci.args | 4 +- ...l2argv-aarch64-virt-2.6-virtio-pci-default.args | 7 +- .../qemuxml2argv-aarch64-virt-default-nic.args | 5 +- .../qemuxml2argv-aarch64-virt-virtio.args | 7 +- .../qemuxml2argv-aarch64-virtio-pci-default.args | 7 +- ...l2argv-aarch64-virtio-pci-manual-addresses.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-acpi-table.args | 4 +- .../qemuxml2argv-arm-vexpressa9-basic.args | 7 +- .../qemuxml2argv-arm-vexpressa9-nodevs.args | 4 +- .../qemuxml2argv-arm-vexpressa9-virtio.args | 7 +- .../qemuxml2argv-arm-virt-virtio.args | 7 +- tests/qemuxml2argvdata/qemuxml2argv-autoindex.args | 4 +- .../qemuxml2argv-balloon-ccw-deflate.args | 4 +- .../qemuxml2argv-balloon-device-auto.args | 4 +- .../qemuxml2argv-balloon-device-deflate-off.args | 4 +- .../qemuxml2argv-balloon-device-deflate.args | 4 +- .../qemuxml2argv-balloon-device-period.args | 4 +- .../qemuxml2argv-balloon-device.args | 4 +- .../qemuxml2argv-balloon-mmio-deflate.args | 4 +- .../qemuxml2argv-bios-nvram-secure.args | 5 +- .../qemuxml2argv-bios-nvram-secure.xml | 6 - .../qemuxml2argvdata/qemuxml2argv-bios-nvram.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml | 6 - tests/qemuxml2argvdata/qemuxml2argv-bios.args | 7 +- .../qemuxml2argv-blkdeviotune-group-num.args | 4 +- .../qemuxml2argv-blkdeviotune-max-length.args | 4 +- .../qemuxml2argv-blkdeviotune-max.args | 4 +- .../qemuxml2argv-blkdeviotune.args | 4 +- .../qemuxml2argv-blkiotune-device.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 4 +- .../qemuxml2argv-boot-complex-bootindex.args | 4 +- .../qemuxml2argv-boot-complex.args | 4 +- .../qemuxml2argv-boot-floppy-q35.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 4 +- ...xml2argv-boot-menu-disable-drive-bootindex.args | 4 +- .../qemuxml2argv-boot-menu-disable-drive.args | 4 +- .../qemuxml2argv-boot-menu-disable.args | 4 +- .../qemuxml2argv-boot-menu-enable-bootindex.args | 4 +- ...qemuxml2argv-boot-menu-enable-with-timeout.args | 4 +- .../qemuxml2argv-boot-menu-enable.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-multi.args | 4 +- .../qemuxml2argv-boot-network.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-order.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-strict.args | 4 +- .../qemuxml2argv-bootindex-floppy-q35.args | 4 +- .../qemuxml2argv-channel-spicevmc-old.args | 4 +- .../qemuxml2argv-channel-spicevmc.args | 4 +- .../qemuxml2argv-clock-catchup.args | 4 +- .../qemuxml2argv-clock-france.args | 4 +- .../qemuxml2argv-clock-hpet-off.args | 4 +- ...muxml2argv-clock-localtime-basis-localtime.args | 4 +- .../qemuxml2argv-clock-localtime.args | 4 +- .../qemuxml2argv-clock-timer-hyperv-rtc.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 4 +- .../qemuxml2argv-clock-variable.args | 4 +- .../qemuxml2argv-console-compat-auto.args | 7 +- .../qemuxml2argv-console-compat.args | 7 +- .../qemuxml2argv-cpu-Haswell-noTSX.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-Haswell.args | 4 +- .../qemuxml2argv-cpu-Haswell2.args | 4 +- .../qemuxml2argv-cpu-Haswell3.args | 4 +- .../qemuxml2argv-cpu-cache-disable.args | 4 +- .../qemuxml2argv-cpu-cache-disable2.args | 4 +- .../qemuxml2argv-cpu-cache-disable3.args | 4 +- .../qemuxml2argv-cpu-cache-emulate-l3.args | 4 +- .../qemuxml2argv-cpu-cache-passthrough.args | 4 +- .../qemuxml2argv-cpu-cache-passthrough2.args | 4 +- .../qemuxml2argv-cpu-check-default-none.args | 4 +- .../qemuxml2argv-cpu-check-default-none2.args | 4 +- .../qemuxml2argv-cpu-check-default-partial.args | 4 +- .../qemuxml2argv-cpu-check-default-partial2.args | 4 +- .../qemuxml2argv-cpu-check-none.args | 4 +- .../qemuxml2argv-cpu-eoi-disabled.args | 4 +- .../qemuxml2argv-cpu-eoi-enabled.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 4 +- .../qemuxml2argv-cpu-exact2-nofallback.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 4 +- .../qemuxml2argv-cpu-fallback.args | 4 +- .../qemuxml2argv-cpu-host-kvmclock.args | 4 +- .../qemuxml2argv-cpu-host-model-cmt.args | 4 +- .../qemuxml2argv-cpu-host-model-fallback.args | 4 +- .../qemuxml2argv-cpu-host-model-vendor.args | 4 +- .../qemuxml2argv-cpu-host-model.args | 4 +- ...qemuxml2argv-cpu-host-passthrough-features.args | 4 +- .../qemuxml2argv-cpu-host-passthrough.args | 4 +- .../qemuxml2argv-cpu-hotplug-startup.args | 4 +- .../qemuxml2argv-cpu-kvmclock.args | 4 +- .../qemuxml2argv-cpu-minimum1.args | 4 +- .../qemuxml2argv-cpu-minimum2.args | 4 +- .../qemuxml2argv-cpu-numa-disjoint.args | 4 +- .../qemuxml2argv-cpu-numa-memshared.args | 4 +- .../qemuxml2argv-cpu-numa-no-memory-element.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 4 +- .../qemuxml2argv-cpu-s390-features.args | 4 +- .../qemuxml2argv-cpu-s390-zEC12.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 4 +- .../qemuxml2argv-cpu-topology1.args | 4 +- .../qemuxml2argv-cpu-topology2.args | 4 +- .../qemuxml2argv-cpu-topology3.args | 4 +- .../qemuxml2argv-cpu-tsc-frequency.args | 4 +- .../qemuxml2argv-cputune-numatune.args | 4 +- .../qemuxml2argv-cputune-zero-shares.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 4 +- .../qemuxml2argv-debug-threads.args | 4 +- .../qemuxml2argv-default-kvm-host-arch.args | 4 +- .../qemuxml2argv-default-qemu-host-arch.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 4 +- .../qemuxml2argv-disk-blockio.args | 4 +- .../qemuxml2argv-disk-cdrom-empty.args | 4 +- .../qemuxml2argv-disk-cdrom-network-ftp.args | 4 +- .../qemuxml2argv-disk-cdrom-network-ftps.args | 4 +- .../qemuxml2argv-disk-cdrom-network-http.args | 4 +- .../qemuxml2argv-disk-cdrom-network-https.args | 4 +- .../qemuxml2argv-disk-cdrom-network-tftp.args | 4 +- ...qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 4 +- .../qemuxml2argv-disk-cdrom-tray.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 4 +- .../qemuxml2argv-disk-copy_on_read.args | 5 +- .../qemuxml2argv-disk-copy_on_read.xml | 6 - .../qemuxml2argv-disk-drive-boot-cdrom.args | 4 +- .../qemuxml2argv-disk-drive-boot-disk.args | 4 +- .../qemuxml2argv-disk-drive-cache-directsync.args | 4 +- .../qemuxml2argv-disk-drive-cache-unsafe.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-none.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-wb.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-wt.args | 4 +- .../qemuxml2argv-disk-drive-copy-on-read.args | 4 +- .../qemuxml2argv-disk-drive-detect-zeroes.args | 4 +- .../qemuxml2argv-disk-drive-discard.args | 4 +- ...uxml2argv-disk-drive-error-policy-enospace.args | 4 +- .../qemuxml2argv-disk-drive-error-policy-stop.args | 4 +- ...gv-disk-drive-error-policy-wreport-rignore.args | 4 +- .../qemuxml2argv-disk-drive-fmt-qcow.args | 4 +- .../qemuxml2argv-disk-drive-network-gluster.args | 4 +- ...qemuxml2argv-disk-drive-network-iscsi-auth.args | 4 +- .../qemuxml2argv-disk-drive-network-iscsi-lun.args | 4 +- .../qemuxml2argv-disk-drive-network-iscsi.args | 4 +- ...qemuxml2argv-disk-drive-network-nbd-export.args | 4 +- ...ml2argv-disk-drive-network-nbd-ipv6-export.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd-ipv6.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd-unix.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd.args | 4 +- ...muxml2argv-disk-drive-network-rbd-auth-AES.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd-auth.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd-ipv6.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd.args | 4 +- .../qemuxml2argv-disk-drive-network-sheepdog.args | 4 +- .../qemuxml2argv-disk-drive-no-boot.args | 4 +- .../qemuxml2argv-disk-drive-readonly-disk.args | 4 +- ...qemuxml2argv-disk-drive-readonly-no-device.args | 4 +- .../qemuxml2argv-disk-drive-shared.args | 4 +- ...emuxml2argv-disk-floppy-tray-no-device-cap.args | 4 +- .../qemuxml2argv-disk-floppy-tray.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 4 +- .../qemuxml2argv-disk-geometry.args | 4 +- .../qemuxml2argv-disk-ide-drive-split.args | 4 +- .../qemuxml2argv-disk-ide-wwn.args | 4 +- .../qemuxml2argv-disk-ioeventfd.args | 5 +- .../qemuxml2argv-disk-ioeventfd.xml | 6 - .../qemuxml2argvdata/qemuxml2argv-disk-iscsi.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-order.args | 4 +- .../qemuxml2argv-disk-sata-device.args | 4 +- .../qemuxml2argv-disk-scsi-device-auto.args | 4 +- .../qemuxml2argv-disk-scsi-device.args | 4 +- .../qemuxml2argv-disk-scsi-disk-split.args | 4 +- .../qemuxml2argv-disk-scsi-disk-vpd.args | 4 +- .../qemuxml2argv-disk-scsi-disk-wwn.args | 4 +- .../qemuxml2argv-disk-scsi-lun-passthrough.args | 4 +- .../qemuxml2argv-disk-scsi-megasas.args | 4 +- .../qemuxml2argv-disk-scsi-mptsas1068.args | 4 +- .../qemuxml2argv-disk-scsi-virtio-scsi.args | 4 +- .../qemuxml2argv-disk-scsi-vscsi.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-serial.args | 4 +- .../qemuxml2argv-disk-snapshot.args | 4 +- .../qemuxml2argv-disk-source-pool-mode.args | 4 +- .../qemuxml2argv-disk-source-pool.args | 4 +- .../qemuxml2argv-disk-usb-device-removable.args | 4 +- .../qemuxml2argv-disk-usb-device.args | 4 +- .../qemuxml2argv-disk-virtio-ccw-many.args | 4 +- .../qemuxml2argv-disk-virtio-ccw.args | 4 +- .../qemuxml2argv-disk-virtio-s390.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-ccw.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-cmd_per_lun.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-ioeventfd.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-max_sectors.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-num_queues.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 4 +- .../qemuxml2argv-encrypted-disk-usage.args | 4 +- .../qemuxml2argv-encrypted-disk.args | 4 +- .../qemuxml2argv-eoi-disabled.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml | 6 - .../qemuxml2argv-fd-memory-no-numa-topology.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology2.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology3.args | 4 +- .../qemuxml2argv-fips-enabled.args | 4 +- .../qemuxml2argv-floppy-drive-fat.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-fs9p-ccw.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-fs9p.args | 4 +- .../qemuxml2argv-graphics-sdl-fullscreen.args | 4 +- .../qemuxml2argv-graphics-sdl.args | 4 +- ...emuxml2argv-graphics-spice-agent-file-xfer.args | 4 +- .../qemuxml2argv-graphics-spice-agentmouse.args | 4 +- ...emuxml2argv-graphics-spice-auto-socket-cfg.args | 4 +- .../qemuxml2argv-graphics-spice-auto-socket.args | 4 +- .../qemuxml2argv-graphics-spice-compression.args | 4 +- .../qemuxml2argv-graphics-spice-no-args.args | 4 +- .../qemuxml2argv-graphics-spice-qxl-vga.args | 4 +- .../qemuxml2argv-graphics-spice-sasl.args | 4 +- .../qemuxml2argv-graphics-spice-socket.args | 4 +- .../qemuxml2argv-graphics-spice-timeout.args | 5 +- .../qemuxml2argv-graphics-spice-timeout.xml | 6 - .../qemuxml2argv-graphics-spice.args | 4 +- .../qemuxml2argv-graphics-vnc-auto-socket-cfg.args | 4 +- .../qemuxml2argv-graphics-vnc-auto-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-no-listen-attr.args | 4 +- .../qemuxml2argv-graphics-vnc-none.args | 4 +- .../qemuxml2argv-graphics-vnc-policy.args | 4 +- ...2argv-graphics-vnc-remove-generated-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-sasl.args | 4 +- .../qemuxml2argv-graphics-vnc-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-tls.args | 4 +- .../qemuxml2argv-graphics-vnc-websocket.args | 4 +- .../qemuxml2argv-graphics-vnc.args | 4 +- .../qemuxml2argv-hostdev-mdev-precreated.args | 4 +- .../qemuxml2argv-hostdev-pci-address-device.args | 4 +- .../qemuxml2argv-hostdev-pci-address.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi-iscsi-auth.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi-iscsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-readonly.args | 4 +- .../qemuxml2argv-hostdev-scsi-vhost-scsi-ccw.args | 4 +- .../qemuxml2argv-hostdev-scsi-vhost-scsi-pci.args | 4 +- ...emuxml2argv-hostdev-scsi-virtio-iscsi-auth.args | 4 +- .../qemuxml2argv-hostdev-scsi-virtio-iscsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-virtio-scsi.args | 4 +- ...muxml2argv-hostdev-usb-address-device-boot.args | 4 +- .../qemuxml2argv-hostdev-usb-address-device.args | 4 +- .../qemuxml2argv-hostdev-usb-address.args | 4 +- .../qemuxml2argv-hostdev-vfio-multidomain.args | 4 +- .../qemuxml2argv-hostdev-vfio.args | 4 +- .../qemuxml2argv-hotplug-base.args | 4 +- .../qemuxml2argv-hugepages-memaccess.args | 4 +- .../qemuxml2argv-hugepages-memaccess2.args | 4 +- .../qemuxml2argv-hugepages-numa.args | 5 +- .../qemuxml2argv-hugepages-numa.xml | 6 - .../qemuxml2argv-hugepages-pages.args | 4 +- .../qemuxml2argv-hugepages-pages2.args | 5 +- .../qemuxml2argv-hugepages-pages3.args | 5 +- .../qemuxml2argv-hugepages-pages5.args | 5 +- .../qemuxml2argv-hugepages-pages6.args | 5 +- .../qemuxml2argv-hugepages-shared.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 4 +- .../qemuxml2argv-hyperv-panic.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 4 +- .../qemuxml2argv-input-usbmouse-addr.args | 4 +- .../qemuxml2argv-input-usbmouse.args | 4 +- .../qemuxml2argv-input-usbtablet.args | 4 +- .../qemuxml2argv-intel-iommu-caching-mode.args | 4 +- .../qemuxml2argv-intel-iommu-device-iotlb.args | 4 +- .../qemuxml2argv-intel-iommu-eim.args | 4 +- .../qemuxml2argv-intel-iommu-ioapic.args | 4 +- .../qemuxml2argv-intel-iommu-machine.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-intel-iommu.args | 4 +- .../qemuxml2argv-iothreads-disk-virtio-ccw.args | 4 +- .../qemuxml2argv-iothreads-disk.args | 4 +- .../qemuxml2argv-iothreads-ids-partial.args | 4 +- .../qemuxml2argv-iothreads-ids.args | 4 +- .../qemuxml2argv-iothreads-virtio-scsi-ccw.args | 4 +- .../qemuxml2argv-iothreads-virtio-scsi-pci.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-iothreads.args | 4 +- .../qemuxml2argv-kvm-features-off.args | 4 +- .../qemuxml2argv-kvm-features.args | 4 +- .../qemuxml2argv-kvm-pit-delay.args | 4 +- .../qemuxml2argv-kvm-pit-discard.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 4 +- .../qemuxml2argv-kvmclock+eoi-disabled.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-luks-disks.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-off-cap.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-off-caps.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-on-cap.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-on-caps.args | 4 +- .../qemuxml2argv-machine-aliases1.args | 4 +- .../qemuxml2argv-machine-aliases2.args | 4 +- .../qemuxml2argv-machine-core-cfg-off.args | 4 +- .../qemuxml2argv-machine-core-off.args | 4 +- .../qemuxml2argv-machine-core-on.args | 4 +- .../qemuxml2argv-machine-deakeywrap-off-cap.args | 4 +- .../qemuxml2argv-machine-deakeywrap-off-caps.args | 4 +- .../qemuxml2argv-machine-deakeywrap-on-cap.args | 4 +- .../qemuxml2argv-machine-deakeywrap-on-caps.args | 4 +- .../qemuxml2argv-machine-keywrap-none-caps.args | 4 +- .../qemuxml2argv-machine-keywrap-none.args | 4 +- ...-machine-loadparm-multiple-disks-nets-s390.args | 4 +- .../qemuxml2argv-machine-loadparm-net-s390.args | 4 +- .../qemuxml2argv-machine-loadparm-s390.args | 4 +- .../qemuxml2argv-machine-smm-opt.args | 4 +- .../qemuxml2argv-machine-usb-opt.args | 4 +- .../qemuxml2argv-machine-vmport-opt.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-master-key.args | 4 +- .../qemuxml2argv-memory-hotplug-dimm-addr.args | 4 +- .../qemuxml2argv-memory-hotplug-dimm.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm-access.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm-label.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm.args | 4 +- .../qemuxml2argv-memory-hotplug-ppc64-nonuma.args | 5 +- .../qemuxml2argv-memory-hotplug-ppc64-nonuma.xml | 6 - .../qemuxml2argv-memory-hotplug.args | 4 +- .../qemuxml2argv-memtune-unlimited.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 4 +- .../qemuxml2argv-migrate-numa-unaligned.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 4 +- .../qemuxml2argv-minimal-msg-timestamp.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 4 +- .../qemuxml2argv-misc-disable-s3.args | 4 +- .../qemuxml2argv-misc-disable-suspends.args | 4 +- .../qemuxml2argv-misc-enable-s4.args | 4 +- .../qemuxml2argv-misc-no-reboot.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 4 +- .../qemuxml2argv-mlock-unsupported.args | 4 +- .../qemuxml2argv-multifunction-pci-device.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-client.args | 4 +- .../qemuxml2argv-net-eth-hostip.args | 4 +- .../qemuxml2argv-net-eth-ifname.args | 4 +- .../qemuxml2argv-net-eth-names.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 4 +- .../qemuxml2argv-net-hostdev-multidomain.args | 4 +- .../qemuxml2argv-net-hostdev-vfio-multidomain.args | 4 +- .../qemuxml2argv-net-hostdev-vfio.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-hostdev.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-server.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-udp.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 4 +- .../qemuxml2argv-net-vhostuser-multiq.args | 4 +- .../qemuxml2argv-net-vhostuser.args | 4 +- .../qemuxml2argv-net-virtio-ccw.args | 4 +- .../qemuxml2argv-net-virtio-device.args | 4 +- .../qemuxml2argv-net-virtio-disable-offloads.args | 4 +- .../qemuxml2argv-net-virtio-netdev.args | 4 +- .../qemuxml2argv-net-virtio-rxqueuesize.args | 4 +- .../qemuxml2argv-net-virtio-s390.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-virtio.args | 4 +- .../qemuxml2argv-no-kvm-pit-device.args | 4 +- .../qemuxml2argv-nographics-display.args | 4 +- .../qemuxml2argv-nographics-vga.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-nographics.args | 4 +- .../qemuxml2argv-nosharepages.args | 4 +- ...qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 4 +- ...d-auto-memory-vcpu-no-cpuset-and-placement.args | 4 +- ...muxml2argv-numad-auto-vcpu-static-numatune.args | 4 +- ...qemuxml2argv-numad-static-memory-auto-vcpu.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-numad.args | 4 +- ...qemuxml2argv-numatune-auto-nodeset-invalid.args | 4 +- .../qemuxml2argv-numatune-auto-prefer.args | 4 +- .../qemuxml2argv-numatune-memnode-no-memory.args | 4 +- .../qemuxml2argv-numatune-memnode.args | 4 +- .../qemuxml2argv-numatune-memory.args | 4 +- .../qemuxml2argv-panic-double.args | 4 +- .../qemuxml2argv-panic-no-address.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-panic.args | 4 +- .../qemuxml2argv-parallel-tcp.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml | 35 --- .../qemuxml2argv-pci-autoadd-addr.args | 4 +- .../qemuxml2argv-pci-autoadd-idx.args | 4 +- .../qemuxml2argv-pci-autofill-addr.args | 4 +- .../qemuxml2argv-pci-bridge-many-disks.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-pci-bridge.args | 4 +- .../qemuxml2argv-pci-expander-bus.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pci-many.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pci-rom.args | 4 +- .../qemuxml2argv-pcie-expander-bus.args | 5 +- .../qemuxml2argv-pcie-root-port-model-generic.args | 4 +- .../qemuxml2argv-pcie-root-port-model-ioh3420.args | 4 +- .../qemuxml2argv-pcie-root-port.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args | 4 +- .../qemuxml2argv-pcie-switch-downstream-port.args | 4 +- .../qemuxml2argv-pcie-switch-upstream-port.args | 4 +- .../qemuxml2argv-pcihole64-q35.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args | 4 +- .../qemuxml2argv-pmu-feature-off.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-pmu-feature.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 7 +- .../qemuxml2argv-ppc64-usb-controller-legacy.args | 4 +- ...emuxml2argv-ppc64-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-ppc64-usb-controller.args | 4 +- .../qemuxml2argv-ppce500-serial.args | 3 +- .../qemuxml2argv-pseries-nvram.args | 4 +- .../qemuxml2argv-pv-spinlock-disabled.args | 4 +- .../qemuxml2argv-pv-spinlock-enabled.args | 4 +- .../qemuxml2argv-q35-acpi-nouefi.args | 4 +- .../qemuxml2argv-q35-acpi-uefi.args | 4 +- .../qemuxml2argv-q35-default-devices-only.args | 4 +- .../qemuxml2argv-q35-multifunction.args | 4 +- .../qemuxml2argv-q35-noacpi-nouefi.args | 4 +- .../qemuxml2argv-q35-pci-force-address.args | 4 +- .../qemuxml2argv-q35-pcie-autoadd.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35-pcie.args | 4 +- .../qemuxml2argv-q35-pm-disable-fallback.args | 4 +- .../qemuxml2argv-q35-pm-disable.args | 4 +- .../qemuxml2argv-q35-usb2-multi.args | 4 +- .../qemuxml2argv-q35-usb2-reorder.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35-usb2.args | 4 +- .../qemuxml2argv-q35-virt-manager-basic.args | 7 +- .../qemuxml2argv-q35-virtio-pci.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35.args | 4 +- .../qemuxml2argv-qemu-ns-commandline-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-commandline-ns1.args | 4 +- .../qemuxml2argv-qemu-ns-commandline.args | 4 +- ...emuxml2argv-qemu-ns-domain-commandline-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-domain-commandline.args | 4 +- .../qemuxml2argv-qemu-ns-domain-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-no-env.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 4 +- .../qemuxml2argv-reboot-timeout-disabled.args | 4 +- .../qemuxml2argv-reboot-timeout-enabled.args | 4 +- .../qemuxml2argv-restore-v2-fd.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-restore-v2.args | 4 +- .../qemuxml2argv-seclabel-dac-none.args | 4 +- .../qemuxml2argv-seclabel-dynamic-baselabel.args | 4 +- .../qemuxml2argv-seclabel-dynamic-labelskip.args | 4 +- .../qemuxml2argv-seclabel-dynamic-override.args | 4 +- .../qemuxml2argv-seclabel-dynamic-relabel.args | 4 +- .../qemuxml2argv-seclabel-dynamic.args | 4 +- .../qemuxml2argv-seclabel-none.args | 4 +- .../qemuxml2argv-seclabel-static-labelskip.args | 4 +- .../qemuxml2argv-seclabel-static-relabel.args | 4 +- .../qemuxml2argv-seclabel-static.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-serial-dev.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml | 38 ---- .../qemuxml2argvdata/qemuxml2argv-serial-file.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-serial-file.xml | 38 ---- .../qemuxml2argvdata/qemuxml2argv-serial-many.args | 23 -- .../qemuxml2argvdata/qemuxml2argv-serial-many.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-pty.args | 4 +- .../qemuxml2argv-serial-spiceport-nospice.args | 4 +- .../qemuxml2argv-serial-tcp-telnet.args | 22 -- .../qemuxml2argv-serial-tcp-telnet.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-udp.args | 23 -- tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml | 44 ---- .../qemuxml2argvdata/qemuxml2argv-serial-unix.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-serial-unix.xml | 38 ---- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml | 36 --- .../qemuxml2argv-shmem-plain-doorbell.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-shmem.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-smp.args | 4 +- .../qemuxml2argv-sound-device.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-sound.args | 4 +- .../qemuxml2argv-tpm-passthrough.args | 4 +- .../qemuxml2argv-usb-controller-default-q35.args | 4 +- .../qemuxml2argv-usb-controller-explicit-q35.args | 4 +- .../qemuxml2argv-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-vcpu-placement-static.args | 4 +- .../qemuxml2argv-video-device-pciaddr-default.args | 4 +- .../qemuxml2argv-video-qxl-device-vgamem.args | 4 +- .../qemuxml2argv-video-qxl-device.args | 4 +- .../qemuxml2argv-video-qxl-heads.args | 4 +- .../qemuxml2argv-video-qxl-nodevice.args | 4 +- .../qemuxml2argv-video-qxl-noheads.args | 4 +- .../qemuxml2argv-video-qxl-sec-device-vgamem.args | 4 +- .../qemuxml2argv-video-qxl-sec-device.args | 4 +- .../qemuxml2argv-video-vga-device-vgamem.args | 4 +- .../qemuxml2argv-video-vga-device.args | 4 +- .../qemuxml2argv-video-vga-nodevice.args | 4 +- .../qemuxml2argv-video-vga-qxl-heads.args | 4 +- .../qemuxml2argv-video-virtio-gpu-device.args | 4 +- .../qemuxml2argv-video-virtio-gpu-secondary.args | 4 +- .../qemuxml2argv-video-virtio-gpu-spice-gl.args | 4 +- .../qemuxml2argv-video-virtio-gpu-virgl.args | 4 +- .../qemuxml2argv-video-virtio-vga.args | 4 +- .../qemuxml2argv-virtio-input-passthrough.args | 4 +- .../qemuxml2argv-virtio-input.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml | 6 - .../qemuxml2argv-virtio-options.args | 4 +- .../qemuxml2argv-virtio-rng-default.args | 4 +- .../qemuxml2argv-virtio-rng-egd.args | 4 +- .../qemuxml2argv-virtio-rng-multiple.args | 4 +- .../qemuxml2argv-virtio-rng-random.args | 4 +- .../qemuxml2argv-watchdog-device.args | 4 +- .../qemuxml2argv-watchdog-dump.args | 4 +- .../qemuxml2argv-watchdog-injectnmi.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 4 +- tests/qemuxml2argvtest.c | 200 ++++++++--------- .../qemuxml2xmlout-bios-nvram.xml | 6 - .../qemuxml2xmlout-disk-copy_on_read.xml | 6 - .../qemuxml2xmlout-event_idx.xml | 6 - .../qemuxml2xmlout-graphics-spice-timeout.xml | 6 - .../qemuxml2xmlout-virtio-lun.xml | 6 - tests/qemuxml2xmltest.c | 10 - 542 files changed, 1683 insertions(+), 1509 deletions(-) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml -- 2.13.0

This reverts commit 70c9b44270f75bfb7a5701d81aa49380d139e8f0. This commit breaks existing aarch64 machvirt configs with: <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> Which fails with: error: Failed to start domain fedora25-aarch64 error: internal error: process exited while connecting to monitor: 2017-06-26T13:55:34.726293Z qemu-system-aarch64: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0) 2017-06-26T13:55:34.782121Z qemu-system-aarch64: -device isa-serial,chardev=charserial0,id=serial0: No 'ISA' bus found for device 'isa-serial' Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_capabilities.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 12d9477cf..61c9a1066 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5573,11 +5573,6 @@ virQEMUCapsSupportsChardev(const virDomainDef *def, if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch != VIR_ARCH_AARCH64)) return true; - /* The virt machine has a PCIe bus and allows plugging in the same type of - * devices as x86 systems do on a PCIe bus. */ - if (qemuDomainIsVirt(def)) - return true; - /* This may not be true for all ARM machine types, but at least * the only supported non-virtio serial devices of vexpress and versatile * don't have the -chardev property wired up. */ -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
This reverts commit 70c9b44270f75bfb7a5701d81aa49380d139e8f0. This commit breaks existing aarch64 machvirt configs with: <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> Which fails with: error: Failed to start domain fedora25-aarch64 error: internal error: process exited while connecting to monitor: 2017-06-26T13:55:34.726293Z qemu-system-aarch64: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0) 2017-06-26T13:55:34.782121Z qemu-system-aarch64: -device isa-serial,chardev=charserial0,id=serial0: No 'ISA' bus found for device 'isa-serial' Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com> I will probably not be able to look at the rest of the series for a few more days, so please go ahead and push this one right away so at least the regression will be gone. -- Andrea Bolognani / Red Hat / Virtualization

On 06/27/2017 01:22 AM, Andrea Bolognani wrote:
On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
This reverts commit 70c9b44270f75bfb7a5701d81aa49380d139e8f0.
This commit breaks existing aarch64 machvirt configs with:
<serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console>
Which fails with:
error: Failed to start domain fedora25-aarch64 error: internal error: process exited while connecting to monitor: 2017-06-26T13:55:34.726293Z qemu-system-aarch64: -chardev pty,id=charserial0: char device redirected to /dev/pts/5 (label charserial0) 2017-06-26T13:55:34.782121Z qemu-system-aarch64: -device isa-serial,chardev=charserial0,id=serial0: No 'ISA' bus found for device 'isa-serial'
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
I will probably not be able to look at the rest of the series for a few more days, so please go ahead and push this one right away so at least the regression will be gone.
Sounds good, I've pushed this one now - Cole

Rather than try to whitelist all device configs that can't use -chardev, blacklist the only one that really can't, which is the default serial/console target type=isa case. ISA specifically isn't a valid config for arm/aarch64, but we've always implicitly treated it to mean 'default platform device'. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_capabilities.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 61c9a1066..d0bc50bd7 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5568,17 +5568,22 @@ virQEMUCapsSupportsChardev(const virDomainDef *def, if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && chr->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) return false; + return true; } - if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch != VIR_ARCH_AARCH64)) + if ((def->os.arch == VIR_ARCH_ARMV7L) || + (def->os.arch == VIR_ARCH_AARCH64)) { + /* TARGET_TYPE_ISA here really means 'the default', which we + treat as whatever the built in platform serial device is on. + And for platform devices we can't use -chardev */ + if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->targetType == VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA) + return false; + return true; + } - /* This may not be true for all ARM machine types, but at least - * the only supported non-virtio serial devices of vexpress and versatile - * don't have the -chardev property wired up. */ - return (chr->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_MMIO || - (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE && - chr->targetType == VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO)); + return true; } -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
@@ -5568,17 +5568,22 @@ virQEMUCapsSupportsChardev(const virDomainDef *def, if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && chr->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) return false; + return true;
This is unnecessary, since the last statement causes the function to return 'true' in any case.
} - if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch != VIR_ARCH_AARCH64)) + if ((def->os.arch == VIR_ARCH_ARMV7L) || + (def->os.arch == VIR_ARCH_AARCH64)) {
You can keep the condition on a single line, and drop the pointless parentheses while you're at it.
+ /* TARGET_TYPE_ISA here really means 'the default', which we + treat as whatever the built in platform serial device is on. + And for platform devices we can't use -chardev */
Very minor thing, but usually all lines in a multi-line comments start with an asterisk.
+ if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->targetType == VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA) + return false; + return true;
This return statement can be left out like the one I commented on above. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

This demonstrates that the previous qemu caps changes will use -chardev for pci-serial on aarch64 machvirt Signed-off-by: Cole Robinson <crobinso@redhat.com> --- .../qemuxml2argv-aarch64-pci-serial.args | 26 ++++++++++++++++++++++ .../qemuxml2argv-aarch64-pci-serial.xml | 17 ++++++++++++++ tests/qemuxml2argvtest.c | 7 ++++++ 3 files changed, 50 insertions(+) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args new file mode 100644 index 000000000..79153d2f4 --- /dev/null +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args @@ -0,0 +1,26 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/home/test \ +USER=test \ +LOGNAME=test \ +QEMU_AUDIO_DRV=none \ +/usr/bin/qemu-system-aarch64 \ +-name aarch64test \ +-S \ +-M virt \ +-m 1024 \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid 496d7ea8-9739-544b-4ebd-ef08be936e8b \ +-nographic \ +-nodefconfig \ +-nodefaults \ +-chardev socket,id=charmonitor,\ +path=/tmp/lib/domain--1-aarch64test/monitor.sock,server,nowait \ +-mon chardev=charmonitor,id=monitor,mode=readline \ +-no-acpi \ +-boot c \ +-device i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1 \ +-device pci-bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x0 \ +-device ioh3420,port=0x10,chassis=3,id=pci.3,bus=pcie.0,addr=0x2 \ +-chardev pty,id=charserial0,logfile=/tmp/log,logappend=on \ +-device pci-serial,chardev=charserial0,id=serial0,bus=pci.2,addr=0x1 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml new file mode 100644 index 000000000..f3d04a2a5 --- /dev/null +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml @@ -0,0 +1,17 @@ +<domain type="qemu"> + <name>aarch64test</name> + <uuid>496d7ea8-9739-544b-4ebd-ef08be936e8b</uuid> + <memory>1048576</memory> + <currentMemory>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os> + <type>hvm</type> + </os> + <devices> + <emulator>/usr/bin/qemu-system-aarch64</emulator> + <serial type='pty'> + <target type='pci-serial' port='0'/> + <log file='/tmp/log' append='on'/> + </serial> + </devices> +</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 27eea70ae..b41c41a96 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -2342,6 +2342,13 @@ mymain(void) DO_TEST_FAILURE("aarch64-kvm-32-on-64", QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO, QEMU_CAPS_KVM); + DO_TEST("aarch64-pci-serial", + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, + QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_CHARDEV_LOGFILE, + QEMU_CAPS_OBJECT_GPEX, QEMU_CAPS_DEVICE_PCI_BRIDGE, + QEMU_CAPS_PCI_MULTIFUNCTION, + QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, + QEMU_CAPS_DEVICE_IOH3420); /* Make sure all combinations of ACPI and UEFI behave as expected */ DO_TEST("aarch64-acpi-uefi", NONE); -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
+++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml @@ -0,0 +1,17 @@ +<domain type="qemu"> + <name>aarch64test</name> + <uuid>496d7ea8-9739-544b-4ebd-ef08be936e8b</uuid> + <memory>1048576</memory> + <currentMemory>1048576</currentMemory>
You can leave out <currentMemory> here.
+ <vcpu placement='static'>1</vcpu> + <os> + <type>hvm</type>
This should be <type arch='aarch64' machine='virt'>hvm</type>
+ </os> + <devices> + <emulator>/usr/bin/qemu-system-aarch64</emulator> + <serial type='pty'> + <target type='pci-serial' port='0'/> + <log file='/tmp/log' append='on'/> + </serial>
You can give the serial an explicit PCI address on pcie-root to avoid the dmi-to-pci-bridge and pci-bridge later. Or not, I leave that up to you.
+++ b/tests/qemuxml2argvtest.c @@ -2342,6 +2342,13 @@ mymain(void) DO_TEST_FAILURE("aarch64-kvm-32-on-64", QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO, QEMU_CAPS_KVM); + DO_TEST("aarch64-pci-serial", + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, + QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_CHARDEV_LOGFILE, + QEMU_CAPS_OBJECT_GPEX, QEMU_CAPS_DEVICE_PCI_BRIDGE, + QEMU_CAPS_PCI_MULTIFUNCTION, + QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, + QEMU_CAPS_DEVICE_IOH3420);
Use QEMU_CAPS_DEVICE_PCIE_ROOT_PORT instead of _IOH3420. _MULTIFUNCTION is not needed for this test case, since the guest doesn't have nearly enough devices for it to make a difference. If you gave the pci-serial an explicit address, you can of course get rid of _PCI_BRIDGE, _DMI_TO_PCI_BRIDGE, _MULTIFUNCTION and _IOH3420 altogether. Please add the test case to qemuxml2xmltest as well. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

AFAIK there aren't any qemu arch/machine types with platform parallel devices that would require old style -parallel config, so we shouldn't ever need this nowadays. Remove a now redundant test Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_command.c | 33 ++++++++------------ .../qemuxml2argv-parallel-tcp.args | 22 -------------- .../qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml | 35 ---------------------- tests/qemuxml2argvtest.c | 1 - tests/qemuxml2xmltest.c | 1 - 5 files changed, 12 insertions(+), 80 deletions(-) delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index c53ab97b9..997d73d4b 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -9284,28 +9284,19 @@ qemuBuildParallelsCommandLine(virLogManagerPtr logManager, virDomainChrDefPtr parallel = def->parallels[i]; char *devstr; - /* Use -chardev with -device if they are available */ - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV)) { - if (!(devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def, - parallel->source, - parallel->info.alias, - qemuCaps, true, - chardevStdioLogd))) - return -1; - virCommandAddArg(cmd, "-chardev"); - virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); + if (!(devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def, + parallel->source, + parallel->info.alias, + qemuCaps, true, + chardevStdioLogd))) + return -1; + virCommandAddArg(cmd, "-chardev"); + virCommandAddArg(cmd, devstr); + VIR_FREE(devstr); - if (qemuBuildChrDeviceCommandLine(cmd, def, parallel, - qemuCaps) < 0) - return -1; - } else { - virCommandAddArg(cmd, "-parallel"); - if (!(devstr = qemuBuildChrArgStr(parallel->source, NULL))) - return -1; - virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); - } + if (qemuBuildChrDeviceCommandLine(cmd, def, parallel, + qemuCaps) < 0) + return -1; } return 0; diff --git a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args b/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args deleted file mode 100644 index 22d551fd8..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args +++ /dev/null @@ -1,22 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --monitor unix:/tmp/lib/domain--1-QEMUGuest1/monitor.sock,server,nowait \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --parallel tcp:127.0.0.1:9999,server,nowait diff --git a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml b/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml deleted file mode 100644 index 705e8c3c1..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml +++ /dev/null @@ -1,35 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219100</memory> - <currentMemory unit='KiB'>219100</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <parallel type='tcp'> - <source mode='bind' host='127.0.0.1' service='9999'/> - <protocol type='raw'/> - <target port='0'/> - </parallel> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index b41c41a96..3610c71bf 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1186,7 +1186,6 @@ mymain(void) QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEPORT); DO_TEST("serial-spiceport-nospice", NONE); - DO_TEST("parallel-tcp", NONE); DO_TEST("console-compat", NONE); DO_TEST("console-compat-auto", NONE); diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index 13072996c..dd4cc2452 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -549,7 +549,6 @@ mymain(void) DO_TEST("serial-many", NONE); DO_TEST("serial-spiceport", NONE); DO_TEST("serial-spiceport-nospice", NONE); - DO_TEST("parallel-tcp", NONE); DO_TEST("console-compat", NONE); DO_TEST("console-compat2", NONE); DO_TEST("console-virtio-many", NONE); -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
AFAIK there aren't any qemu arch/machine types with platform parallel devices that would require old style -parallel config, so we shouldn't ever need this nowadays. Remove a now redundant test Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_command.c | 33 ++++++++------------ .../qemuxml2argv-parallel-tcp.args | 22 -------------- .../qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml | 35 ---------------------- tests/qemuxml2argvtest.c | 1 - tests/qemuxml2xmltest.c | 1 - 5 files changed, 12 insertions(+), 80 deletions(-) delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml
Under the assumption that you've done your homework and confirmed that bumping the minimium supported QEMU version has made this unnecessary, Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

AFAIK there aren't any cases where we should fail these checks with supported qemu versions, so just drop them. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_command.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 997d73d4b..ca9329bb5 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -8880,8 +8880,7 @@ qemuBuildSmartcardCommandLine(virLogManagerPtr logManager, switch (smartcard->type) { case VIR_DOMAIN_SMARTCARD_TYPE_HOST: - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV) || - !virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_EMULATED)) { + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_EMULATED)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("this QEMU binary lacks smartcard host " "mode support")); @@ -8892,8 +8891,7 @@ qemuBuildSmartcardCommandLine(virLogManagerPtr logManager, break; case VIR_DOMAIN_SMARTCARD_TYPE_HOST_CERTIFICATES: - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV) || - !virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_EMULATED)) { + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_EMULATED)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("this QEMU binary lacks smartcard host " "mode support")); @@ -8928,8 +8926,7 @@ qemuBuildSmartcardCommandLine(virLogManagerPtr logManager, break; case VIR_DOMAIN_SMARTCARD_TYPE_PASSTHROUGH: - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV) || - !virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_PASSTHRU)) { + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCID_PASSTHRU)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("this QEMU binary lacks smartcard " "passthrough mode support")); @@ -9319,12 +9316,6 @@ qemuBuildChannelsCommandLine(virLogManagerPtr logManager, switch (channel->targetType) { case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_GUESTFWD: - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - "%s", _("guestfwd requires QEMU to support -chardev & -device")); - return -1; - } - if (!(devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def, channel->source, channel->info.alias, -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
AFAIK there aren't any cases where we should fail these checks with supported qemu versions, so just drop them. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_command.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-)
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

AFAIK there aren't any cases where we will/should hit the old code path for our supported qemu versions, so drop the old code. Massive test suite churn follows Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_command.c | 38 +++++++--------------- .../qemuxml2argv-aarch64-aavmf-virtio-mmio.args | 4 ++- .../qemuxml2argv-aarch64-acpi-uefi.args | 4 ++- .../qemuxml2argv-aarch64-cpu-passthrough.args | 4 ++- .../qemuxml2argv-aarch64-gic-host.args | 4 ++- .../qemuxml2argv-aarch64-gic-none-tcg.args | 4 ++- .../qemuxml2argv-aarch64-gic-v2.args | 4 ++- .../qemuxml2argv-aarch64-gic-v3.args | 4 ++- .../qemuxml2argv-aarch64-kvm-32-on-64.args | 4 ++- .../qemuxml2argv-aarch64-noacpi-nouefi.args | 4 ++- .../qemuxml2argv-aarch64-noacpi-uefi.args | 4 ++- ...muxml2argv-aarch64-usb-controller-nec-xhci.args | 4 ++- ...uxml2argv-aarch64-usb-controller-qemu-xhci.args | 4 ++- .../qemuxml2argv-aarch64-video-virtio-gpu-pci.args | 4 ++- ...l2argv-aarch64-virt-2.6-virtio-pci-default.args | 4 ++- .../qemuxml2argv-aarch64-virt-default-nic.args | 5 +-- .../qemuxml2argv-aarch64-virt-virtio.args | 4 ++- .../qemuxml2argv-aarch64-virtio-pci-default.args | 4 ++- ...l2argv-aarch64-virtio-pci-manual-addresses.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-acpi-table.args | 4 ++- .../qemuxml2argv-arm-vexpressa9-basic.args | 4 ++- .../qemuxml2argv-arm-vexpressa9-nodevs.args | 4 ++- .../qemuxml2argv-arm-vexpressa9-virtio.args | 4 ++- .../qemuxml2argv-arm-virt-virtio.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-autoindex.args | 4 ++- .../qemuxml2argv-balloon-ccw-deflate.args | 4 ++- .../qemuxml2argv-balloon-device-auto.args | 4 ++- .../qemuxml2argv-balloon-device-deflate-off.args | 4 ++- .../qemuxml2argv-balloon-device-deflate.args | 4 ++- .../qemuxml2argv-balloon-device-period.args | 4 ++- .../qemuxml2argv-balloon-device.args | 4 ++- .../qemuxml2argv-balloon-mmio-deflate.args | 4 ++- .../qemuxml2argv-bios-nvram-secure.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-bios-nvram.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-bios.args | 4 ++- .../qemuxml2argv-blkdeviotune-group-num.args | 4 ++- .../qemuxml2argv-blkdeviotune-max-length.args | 4 ++- .../qemuxml2argv-blkdeviotune-max.args | 4 ++- .../qemuxml2argv-blkdeviotune.args | 4 ++- .../qemuxml2argv-blkiotune-device.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 4 ++- .../qemuxml2argv-boot-complex-bootindex.args | 4 ++- .../qemuxml2argv-boot-complex.args | 4 ++- .../qemuxml2argv-boot-floppy-q35.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 4 ++- ...xml2argv-boot-menu-disable-drive-bootindex.args | 4 ++- .../qemuxml2argv-boot-menu-disable-drive.args | 4 ++- .../qemuxml2argv-boot-menu-disable.args | 4 ++- .../qemuxml2argv-boot-menu-enable-bootindex.args | 4 ++- ...qemuxml2argv-boot-menu-enable-with-timeout.args | 4 ++- .../qemuxml2argv-boot-menu-enable.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-boot-multi.args | 4 ++- .../qemuxml2argv-boot-network.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-boot-order.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-boot-strict.args | 4 ++- .../qemuxml2argv-bootindex-floppy-q35.args | 4 ++- .../qemuxml2argv-channel-spicevmc-old.args | 4 ++- .../qemuxml2argv-channel-spicevmc.args | 4 ++- .../qemuxml2argv-clock-catchup.args | 4 ++- .../qemuxml2argv-clock-france.args | 4 ++- .../qemuxml2argv-clock-hpet-off.args | 4 ++- ...muxml2argv-clock-localtime-basis-localtime.args | 4 ++- .../qemuxml2argv-clock-localtime.args | 4 ++- .../qemuxml2argv-clock-timer-hyperv-rtc.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 4 ++- .../qemuxml2argv-clock-variable.args | 4 ++- .../qemuxml2argv-console-compat-auto.args | 4 ++- .../qemuxml2argv-console-compat.args | 4 ++- .../qemuxml2argv-cpu-Haswell-noTSX.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-cpu-Haswell.args | 4 ++- .../qemuxml2argv-cpu-Haswell2.args | 4 ++- .../qemuxml2argv-cpu-Haswell3.args | 4 ++- .../qemuxml2argv-cpu-cache-disable.args | 4 ++- .../qemuxml2argv-cpu-cache-disable2.args | 4 ++- .../qemuxml2argv-cpu-cache-disable3.args | 4 ++- .../qemuxml2argv-cpu-cache-emulate-l3.args | 4 ++- .../qemuxml2argv-cpu-cache-passthrough.args | 4 ++- .../qemuxml2argv-cpu-cache-passthrough2.args | 4 ++- .../qemuxml2argv-cpu-check-default-none.args | 4 ++- .../qemuxml2argv-cpu-check-default-none2.args | 4 ++- .../qemuxml2argv-cpu-check-default-partial.args | 4 ++- .../qemuxml2argv-cpu-check-default-partial2.args | 4 ++- .../qemuxml2argv-cpu-check-none.args | 4 ++- .../qemuxml2argv-cpu-eoi-disabled.args | 4 ++- .../qemuxml2argv-cpu-eoi-enabled.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 4 ++- .../qemuxml2argv-cpu-exact2-nofallback.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 4 ++- .../qemuxml2argv-cpu-fallback.args | 4 ++- .../qemuxml2argv-cpu-host-kvmclock.args | 4 ++- .../qemuxml2argv-cpu-host-model-cmt.args | 4 ++- .../qemuxml2argv-cpu-host-model-fallback.args | 4 ++- .../qemuxml2argv-cpu-host-model-vendor.args | 4 ++- .../qemuxml2argv-cpu-host-model.args | 4 ++- ...qemuxml2argv-cpu-host-passthrough-features.args | 4 ++- .../qemuxml2argv-cpu-host-passthrough.args | 4 ++- .../qemuxml2argv-cpu-hotplug-startup.args | 4 ++- .../qemuxml2argv-cpu-kvmclock.args | 4 ++- .../qemuxml2argv-cpu-minimum1.args | 4 ++- .../qemuxml2argv-cpu-minimum2.args | 4 ++- .../qemuxml2argv-cpu-numa-disjoint.args | 4 ++- .../qemuxml2argv-cpu-numa-memshared.args | 4 ++- .../qemuxml2argv-cpu-numa-no-memory-element.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 4 ++- .../qemuxml2argv-cpu-s390-features.args | 4 ++- .../qemuxml2argv-cpu-s390-zEC12.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 4 ++- .../qemuxml2argv-cpu-topology1.args | 4 ++- .../qemuxml2argv-cpu-topology2.args | 4 ++- .../qemuxml2argv-cpu-topology3.args | 4 ++- .../qemuxml2argv-cpu-tsc-frequency.args | 4 ++- .../qemuxml2argv-cputune-numatune.args | 4 ++- .../qemuxml2argv-cputune-zero-shares.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 4 ++- .../qemuxml2argv-debug-threads.args | 4 ++- .../qemuxml2argv-default-kvm-host-arch.args | 4 ++- .../qemuxml2argv-default-qemu-host-arch.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 4 ++- .../qemuxml2argv-disk-blockio.args | 4 ++- .../qemuxml2argv-disk-cdrom-empty.args | 4 ++- .../qemuxml2argv-disk-cdrom-network-ftp.args | 4 ++- .../qemuxml2argv-disk-cdrom-network-ftps.args | 4 ++- .../qemuxml2argv-disk-cdrom-network-http.args | 4 ++- .../qemuxml2argv-disk-cdrom-network-https.args | 4 ++- .../qemuxml2argv-disk-cdrom-network-tftp.args | 4 ++- ...qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 4 ++- .../qemuxml2argv-disk-cdrom-tray.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 4 ++- .../qemuxml2argv-disk-copy_on_read.args | 4 ++- .../qemuxml2argv-disk-drive-boot-cdrom.args | 4 ++- .../qemuxml2argv-disk-drive-boot-disk.args | 4 ++- .../qemuxml2argv-disk-drive-cache-directsync.args | 4 ++- .../qemuxml2argv-disk-drive-cache-unsafe.args | 4 ++- .../qemuxml2argv-disk-drive-cache-v2-none.args | 4 ++- .../qemuxml2argv-disk-drive-cache-v2-wb.args | 4 ++- .../qemuxml2argv-disk-drive-cache-v2-wt.args | 4 ++- .../qemuxml2argv-disk-drive-copy-on-read.args | 4 ++- .../qemuxml2argv-disk-drive-detect-zeroes.args | 4 ++- .../qemuxml2argv-disk-drive-discard.args | 4 ++- ...uxml2argv-disk-drive-error-policy-enospace.args | 4 ++- .../qemuxml2argv-disk-drive-error-policy-stop.args | 4 ++- ...gv-disk-drive-error-policy-wreport-rignore.args | 4 ++- .../qemuxml2argv-disk-drive-fmt-qcow.args | 4 ++- .../qemuxml2argv-disk-drive-network-gluster.args | 4 ++- ...qemuxml2argv-disk-drive-network-iscsi-auth.args | 4 ++- .../qemuxml2argv-disk-drive-network-iscsi-lun.args | 4 ++- .../qemuxml2argv-disk-drive-network-iscsi.args | 4 ++- ...qemuxml2argv-disk-drive-network-nbd-export.args | 4 ++- ...ml2argv-disk-drive-network-nbd-ipv6-export.args | 4 ++- .../qemuxml2argv-disk-drive-network-nbd-ipv6.args | 4 ++- .../qemuxml2argv-disk-drive-network-nbd-unix.args | 4 ++- .../qemuxml2argv-disk-drive-network-nbd.args | 4 ++- ...muxml2argv-disk-drive-network-rbd-auth-AES.args | 4 ++- .../qemuxml2argv-disk-drive-network-rbd-auth.args | 4 ++- .../qemuxml2argv-disk-drive-network-rbd-ipv6.args | 4 ++- .../qemuxml2argv-disk-drive-network-rbd.args | 4 ++- .../qemuxml2argv-disk-drive-network-sheepdog.args | 4 ++- .../qemuxml2argv-disk-drive-no-boot.args | 4 ++- .../qemuxml2argv-disk-drive-readonly-disk.args | 4 ++- ...qemuxml2argv-disk-drive-readonly-no-device.args | 4 ++- .../qemuxml2argv-disk-drive-shared.args | 4 ++- ...emuxml2argv-disk-floppy-tray-no-device-cap.args | 4 ++- .../qemuxml2argv-disk-floppy-tray.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 4 ++- .../qemuxml2argv-disk-geometry.args | 4 ++- .../qemuxml2argv-disk-ide-drive-split.args | 4 ++- .../qemuxml2argv-disk-ide-wwn.args | 4 ++- .../qemuxml2argv-disk-ioeventfd.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-iscsi.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-order.args | 4 ++- .../qemuxml2argv-disk-sata-device.args | 4 ++- .../qemuxml2argv-disk-scsi-device-auto.args | 4 ++- .../qemuxml2argv-disk-scsi-device.args | 4 ++- .../qemuxml2argv-disk-scsi-disk-split.args | 4 ++- .../qemuxml2argv-disk-scsi-disk-vpd.args | 4 ++- .../qemuxml2argv-disk-scsi-disk-wwn.args | 4 ++- .../qemuxml2argv-disk-scsi-lun-passthrough.args | 4 ++- .../qemuxml2argv-disk-scsi-megasas.args | 4 ++- .../qemuxml2argv-disk-scsi-mptsas1068.args | 4 ++- .../qemuxml2argv-disk-scsi-virtio-scsi.args | 4 ++- .../qemuxml2argv-disk-scsi-vscsi.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-serial.args | 4 ++- .../qemuxml2argv-disk-snapshot.args | 4 ++- .../qemuxml2argv-disk-source-pool-mode.args | 4 ++- .../qemuxml2argv-disk-source-pool.args | 4 ++- .../qemuxml2argv-disk-usb-device-removable.args | 4 ++- .../qemuxml2argv-disk-usb-device.args | 4 ++- .../qemuxml2argv-disk-virtio-ccw-many.args | 4 ++- .../qemuxml2argv-disk-virtio-ccw.args | 4 ++- .../qemuxml2argv-disk-virtio-s390.args | 4 ++- .../qemuxml2argv-disk-virtio-scsi-ccw.args | 4 ++- .../qemuxml2argv-disk-virtio-scsi-cmd_per_lun.args | 4 ++- .../qemuxml2argv-disk-virtio-scsi-ioeventfd.args | 4 ++- .../qemuxml2argv-disk-virtio-scsi-max_sectors.args | 4 ++- .../qemuxml2argv-disk-virtio-scsi-num_queues.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 4 ++- .../qemuxml2argv-encrypted-disk-usage.args | 4 ++- .../qemuxml2argv-encrypted-disk.args | 4 ++- .../qemuxml2argv-eoi-disabled.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 4 ++- .../qemuxml2argv-fd-memory-no-numa-topology.args | 4 ++- .../qemuxml2argv-fd-memory-numa-topology.args | 4 ++- .../qemuxml2argv-fd-memory-numa-topology2.args | 4 ++- .../qemuxml2argv-fd-memory-numa-topology3.args | 4 ++- .../qemuxml2argv-fips-enabled.args | 4 ++- .../qemuxml2argv-floppy-drive-fat.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-fs9p-ccw.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-fs9p.args | 4 ++- .../qemuxml2argv-graphics-sdl-fullscreen.args | 4 ++- .../qemuxml2argv-graphics-sdl.args | 4 ++- ...emuxml2argv-graphics-spice-agent-file-xfer.args | 4 ++- .../qemuxml2argv-graphics-spice-agentmouse.args | 4 ++- ...emuxml2argv-graphics-spice-auto-socket-cfg.args | 4 ++- .../qemuxml2argv-graphics-spice-auto-socket.args | 4 ++- .../qemuxml2argv-graphics-spice-compression.args | 4 ++- .../qemuxml2argv-graphics-spice-no-args.args | 4 ++- .../qemuxml2argv-graphics-spice-qxl-vga.args | 4 ++- .../qemuxml2argv-graphics-spice-sasl.args | 4 ++- .../qemuxml2argv-graphics-spice-socket.args | 4 ++- .../qemuxml2argv-graphics-spice-timeout.args | 4 ++- .../qemuxml2argv-graphics-spice.args | 4 ++- .../qemuxml2argv-graphics-vnc-auto-socket-cfg.args | 4 ++- .../qemuxml2argv-graphics-vnc-auto-socket.args | 4 ++- .../qemuxml2argv-graphics-vnc-no-listen-attr.args | 4 ++- .../qemuxml2argv-graphics-vnc-none.args | 4 ++- .../qemuxml2argv-graphics-vnc-policy.args | 4 ++- ...2argv-graphics-vnc-remove-generated-socket.args | 4 ++- .../qemuxml2argv-graphics-vnc-sasl.args | 4 ++- .../qemuxml2argv-graphics-vnc-socket.args | 4 ++- .../qemuxml2argv-graphics-vnc-tls.args | 4 ++- .../qemuxml2argv-graphics-vnc-websocket.args | 4 ++- .../qemuxml2argv-graphics-vnc.args | 4 ++- .../qemuxml2argv-hostdev-mdev-precreated.args | 4 ++- .../qemuxml2argv-hostdev-pci-address-device.args | 4 ++- .../qemuxml2argv-hostdev-pci-address.args | 4 ++- .../qemuxml2argv-hostdev-scsi-lsi-iscsi-auth.args | 4 ++- .../qemuxml2argv-hostdev-scsi-lsi-iscsi.args | 4 ++- .../qemuxml2argv-hostdev-scsi-lsi.args | 4 ++- .../qemuxml2argv-hostdev-scsi-readonly.args | 4 ++- .../qemuxml2argv-hostdev-scsi-vhost-scsi-ccw.args | 4 ++- .../qemuxml2argv-hostdev-scsi-vhost-scsi-pci.args | 4 ++- ...emuxml2argv-hostdev-scsi-virtio-iscsi-auth.args | 4 ++- .../qemuxml2argv-hostdev-scsi-virtio-iscsi.args | 4 ++- .../qemuxml2argv-hostdev-scsi-virtio-scsi.args | 4 ++- ...muxml2argv-hostdev-usb-address-device-boot.args | 4 ++- .../qemuxml2argv-hostdev-usb-address-device.args | 4 ++- .../qemuxml2argv-hostdev-usb-address.args | 4 ++- .../qemuxml2argv-hostdev-vfio-multidomain.args | 4 ++- .../qemuxml2argv-hostdev-vfio.args | 4 ++- .../qemuxml2argv-hotplug-base.args | 4 ++- .../qemuxml2argv-hugepages-memaccess.args | 4 ++- .../qemuxml2argv-hugepages-memaccess2.args | 4 ++- .../qemuxml2argv-hugepages-numa.args | 4 ++- .../qemuxml2argv-hugepages-pages.args | 4 ++- .../qemuxml2argv-hugepages-pages2.args | 5 +-- .../qemuxml2argv-hugepages-pages3.args | 5 +-- .../qemuxml2argv-hugepages-pages5.args | 5 +-- .../qemuxml2argv-hugepages-pages6.args | 5 +-- .../qemuxml2argv-hugepages-shared.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 4 ++- .../qemuxml2argv-hyperv-panic.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 4 ++- .../qemuxml2argv-input-usbmouse-addr.args | 4 ++- .../qemuxml2argv-input-usbmouse.args | 4 ++- .../qemuxml2argv-input-usbtablet.args | 4 ++- .../qemuxml2argv-intel-iommu-caching-mode.args | 4 ++- .../qemuxml2argv-intel-iommu-device-iotlb.args | 4 ++- .../qemuxml2argv-intel-iommu-eim.args | 4 ++- .../qemuxml2argv-intel-iommu-ioapic.args | 4 ++- .../qemuxml2argv-intel-iommu-machine.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-intel-iommu.args | 4 ++- .../qemuxml2argv-iothreads-disk-virtio-ccw.args | 4 ++- .../qemuxml2argv-iothreads-disk.args | 4 ++- .../qemuxml2argv-iothreads-ids-partial.args | 4 ++- .../qemuxml2argv-iothreads-ids.args | 4 ++- .../qemuxml2argv-iothreads-virtio-scsi-ccw.args | 4 ++- .../qemuxml2argv-iothreads-virtio-scsi-pci.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-iothreads.args | 4 ++- .../qemuxml2argv-kvm-features-off.args | 4 ++- .../qemuxml2argv-kvm-features.args | 4 ++- .../qemuxml2argv-kvm-pit-delay.args | 4 ++- .../qemuxml2argv-kvm-pit-discard.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 4 ++- .../qemuxml2argv-kvmclock+eoi-disabled.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-luks-disks.args | 4 ++- .../qemuxml2argv-machine-aeskeywrap-off-cap.args | 4 ++- .../qemuxml2argv-machine-aeskeywrap-off-caps.args | 4 ++- .../qemuxml2argv-machine-aeskeywrap-on-cap.args | 4 ++- .../qemuxml2argv-machine-aeskeywrap-on-caps.args | 4 ++- .../qemuxml2argv-machine-aliases1.args | 4 ++- .../qemuxml2argv-machine-aliases2.args | 4 ++- .../qemuxml2argv-machine-core-cfg-off.args | 4 ++- .../qemuxml2argv-machine-core-off.args | 4 ++- .../qemuxml2argv-machine-core-on.args | 4 ++- .../qemuxml2argv-machine-deakeywrap-off-cap.args | 4 ++- .../qemuxml2argv-machine-deakeywrap-off-caps.args | 4 ++- .../qemuxml2argv-machine-deakeywrap-on-cap.args | 4 ++- .../qemuxml2argv-machine-deakeywrap-on-caps.args | 4 ++- .../qemuxml2argv-machine-keywrap-none-caps.args | 4 ++- .../qemuxml2argv-machine-keywrap-none.args | 4 ++- ...-machine-loadparm-multiple-disks-nets-s390.args | 4 ++- .../qemuxml2argv-machine-loadparm-net-s390.args | 4 ++- .../qemuxml2argv-machine-loadparm-s390.args | 4 ++- .../qemuxml2argv-machine-smm-opt.args | 4 ++- .../qemuxml2argv-machine-usb-opt.args | 4 ++- .../qemuxml2argv-machine-vmport-opt.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-master-key.args | 4 ++- .../qemuxml2argv-memory-hotplug-dimm-addr.args | 4 ++- .../qemuxml2argv-memory-hotplug-dimm.args | 4 ++- .../qemuxml2argv-memory-hotplug-nvdimm-access.args | 4 ++- .../qemuxml2argv-memory-hotplug-nvdimm-label.args | 4 ++- .../qemuxml2argv-memory-hotplug-nvdimm.args | 4 ++- .../qemuxml2argv-memory-hotplug-ppc64-nonuma.args | 4 ++- .../qemuxml2argv-memory-hotplug.args | 4 ++- .../qemuxml2argv-memtune-unlimited.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 4 ++- .../qemuxml2argv-migrate-numa-unaligned.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 4 ++- .../qemuxml2argv-minimal-msg-timestamp.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 4 ++- .../qemuxml2argv-misc-disable-s3.args | 4 ++- .../qemuxml2argv-misc-disable-suspends.args | 4 ++- .../qemuxml2argv-misc-enable-s4.args | 4 ++- .../qemuxml2argv-misc-no-reboot.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 4 ++- .../qemuxml2argv-mlock-unsupported.args | 4 ++- .../qemuxml2argv-multifunction-pci-device.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-net-client.args | 4 ++- .../qemuxml2argv-net-eth-hostip.args | 4 ++- .../qemuxml2argv-net-eth-ifname.args | 4 ++- .../qemuxml2argv-net-eth-names.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 4 ++- .../qemuxml2argv-net-hostdev-multidomain.args | 4 ++- .../qemuxml2argv-net-hostdev-vfio-multidomain.args | 4 ++- .../qemuxml2argv-net-hostdev-vfio.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-net-hostdev.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-net-server.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-net-udp.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 4 ++- .../qemuxml2argv-net-vhostuser-multiq.args | 4 ++- .../qemuxml2argv-net-vhostuser.args | 4 ++- .../qemuxml2argv-net-virtio-ccw.args | 4 ++- .../qemuxml2argv-net-virtio-device.args | 4 ++- .../qemuxml2argv-net-virtio-disable-offloads.args | 4 ++- .../qemuxml2argv-net-virtio-netdev.args | 4 ++- .../qemuxml2argv-net-virtio-rxqueuesize.args | 4 ++- .../qemuxml2argv-net-virtio-s390.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-net-virtio.args | 4 ++- .../qemuxml2argv-no-kvm-pit-device.args | 4 ++- .../qemuxml2argv-nographics-display.args | 4 ++- .../qemuxml2argv-nographics-vga.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-nographics.args | 4 ++- .../qemuxml2argv-nosharepages.args | 4 ++- ...qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 4 ++- ...d-auto-memory-vcpu-no-cpuset-and-placement.args | 4 ++- ...muxml2argv-numad-auto-vcpu-static-numatune.args | 4 ++- ...qemuxml2argv-numad-static-memory-auto-vcpu.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-numad.args | 4 ++- ...qemuxml2argv-numatune-auto-nodeset-invalid.args | 4 ++- .../qemuxml2argv-numatune-auto-prefer.args | 4 ++- .../qemuxml2argv-numatune-memnode-no-memory.args | 4 ++- .../qemuxml2argv-numatune-memnode.args | 4 ++- .../qemuxml2argv-numatune-memory.args | 4 ++- .../qemuxml2argv-panic-double.args | 4 ++- .../qemuxml2argv-panic-no-address.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-panic.args | 4 ++- .../qemuxml2argv-pci-autoadd-addr.args | 4 ++- .../qemuxml2argv-pci-autoadd-idx.args | 4 ++- .../qemuxml2argv-pci-autofill-addr.args | 4 ++- .../qemuxml2argv-pci-bridge-many-disks.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-pci-bridge.args | 4 ++- .../qemuxml2argv-pci-expander-bus.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-pci-many.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-pci-rom.args | 4 ++- .../qemuxml2argv-pcie-expander-bus.args | 5 +-- .../qemuxml2argv-pcie-root-port-model-generic.args | 4 ++- .../qemuxml2argv-pcie-root-port-model-ioh3420.args | 4 ++- .../qemuxml2argv-pcie-root-port.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args | 4 ++- .../qemuxml2argv-pcie-switch-downstream-port.args | 4 ++- .../qemuxml2argv-pcie-switch-upstream-port.args | 4 ++- .../qemuxml2argv-pcihole64-q35.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args | 4 ++- .../qemuxml2argv-pmu-feature-off.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-pmu-feature.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 4 ++- .../qemuxml2argv-ppc64-usb-controller-legacy.args | 4 ++- ...emuxml2argv-ppc64-usb-controller-qemu-xhci.args | 4 ++- .../qemuxml2argv-ppc64-usb-controller.args | 4 ++- .../qemuxml2argv-pseries-nvram.args | 4 ++- .../qemuxml2argv-pv-spinlock-disabled.args | 4 ++- .../qemuxml2argv-pv-spinlock-enabled.args | 4 ++- .../qemuxml2argv-q35-acpi-nouefi.args | 4 ++- .../qemuxml2argv-q35-acpi-uefi.args | 4 ++- .../qemuxml2argv-q35-default-devices-only.args | 4 ++- .../qemuxml2argv-q35-multifunction.args | 4 ++- .../qemuxml2argv-q35-noacpi-nouefi.args | 4 ++- .../qemuxml2argv-q35-pci-force-address.args | 4 ++- .../qemuxml2argv-q35-pcie-autoadd.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-q35-pcie.args | 4 ++- .../qemuxml2argv-q35-pm-disable-fallback.args | 4 ++- .../qemuxml2argv-q35-pm-disable.args | 4 ++- .../qemuxml2argv-q35-usb2-multi.args | 4 ++- .../qemuxml2argv-q35-usb2-reorder.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-q35-usb2.args | 4 ++- .../qemuxml2argv-q35-virt-manager-basic.args | 4 ++- .../qemuxml2argv-q35-virtio-pci.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-q35.args | 4 ++- .../qemuxml2argv-qemu-ns-commandline-ns0.args | 4 ++- .../qemuxml2argv-qemu-ns-commandline-ns1.args | 4 ++- .../qemuxml2argv-qemu-ns-commandline.args | 4 ++- ...emuxml2argv-qemu-ns-domain-commandline-ns0.args | 4 ++- .../qemuxml2argv-qemu-ns-domain-commandline.args | 4 ++- .../qemuxml2argv-qemu-ns-domain-ns0.args | 4 ++- .../qemuxml2argv-qemu-ns-no-env.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 4 ++- .../qemuxml2argv-reboot-timeout-disabled.args | 4 ++- .../qemuxml2argv-reboot-timeout-enabled.args | 4 ++- .../qemuxml2argv-restore-v2-fd.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-restore-v2.args | 4 ++- .../qemuxml2argv-seclabel-dac-none.args | 4 ++- .../qemuxml2argv-seclabel-dynamic-baselabel.args | 4 ++- .../qemuxml2argv-seclabel-dynamic-labelskip.args | 4 ++- .../qemuxml2argv-seclabel-dynamic-override.args | 4 ++- .../qemuxml2argv-seclabel-dynamic-relabel.args | 4 ++- .../qemuxml2argv-seclabel-dynamic.args | 4 ++- .../qemuxml2argv-seclabel-none.args | 4 ++- .../qemuxml2argv-seclabel-static-labelskip.args | 4 ++- .../qemuxml2argv-seclabel-static-relabel.args | 4 ++- .../qemuxml2argv-seclabel-static.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-dev.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-file.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-many.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-pty.args | 4 ++- .../qemuxml2argv-serial-spiceport-nospice.args | 4 ++- .../qemuxml2argv-serial-tcp-telnet.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-udp.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-serial-unix.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 4 ++- .../qemuxml2argv-shmem-plain-doorbell.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-shmem.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-smp.args | 4 ++- .../qemuxml2argv-sound-device.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-sound.args | 4 ++- .../qemuxml2argv-tpm-passthrough.args | 4 ++- .../qemuxml2argv-usb-controller-default-q35.args | 4 ++- .../qemuxml2argv-usb-controller-explicit-q35.args | 4 ++- .../qemuxml2argv-usb-controller-qemu-xhci.args | 4 ++- .../qemuxml2argv-vcpu-placement-static.args | 4 ++- .../qemuxml2argv-video-device-pciaddr-default.args | 4 ++- .../qemuxml2argv-video-qxl-device-vgamem.args | 4 ++- .../qemuxml2argv-video-qxl-device.args | 4 ++- .../qemuxml2argv-video-qxl-heads.args | 4 ++- .../qemuxml2argv-video-qxl-nodevice.args | 4 ++- .../qemuxml2argv-video-qxl-noheads.args | 4 ++- .../qemuxml2argv-video-qxl-sec-device-vgamem.args | 4 ++- .../qemuxml2argv-video-qxl-sec-device.args | 4 ++- .../qemuxml2argv-video-vga-device-vgamem.args | 4 ++- .../qemuxml2argv-video-vga-device.args | 4 ++- .../qemuxml2argv-video-vga-nodevice.args | 4 ++- .../qemuxml2argv-video-vga-qxl-heads.args | 4 ++- .../qemuxml2argv-video-virtio-gpu-device.args | 4 ++- .../qemuxml2argv-video-virtio-gpu-secondary.args | 4 ++- .../qemuxml2argv-video-virtio-gpu-spice-gl.args | 4 ++- .../qemuxml2argv-video-virtio-gpu-virgl.args | 4 ++- .../qemuxml2argv-video-virtio-vga.args | 4 ++- .../qemuxml2argv-virtio-input-passthrough.args | 4 ++- .../qemuxml2argv-virtio-input.args | 4 ++- .../qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 4 ++- .../qemuxml2argv-virtio-options.args | 4 ++- .../qemuxml2argv-virtio-rng-default.args | 4 ++- .../qemuxml2argv-virtio-rng-egd.args | 4 ++- .../qemuxml2argv-virtio-rng-multiple.args | 4 ++- .../qemuxml2argv-virtio-rng-random.args | 4 ++- .../qemuxml2argv-watchdog-device.args | 4 ++- .../qemuxml2argv-watchdog-dump.args | 4 ++- .../qemuxml2argv-watchdog-injectnmi.args | 4 ++- tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 4 ++- 490 files changed, 1479 insertions(+), 521 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index ca9329bb5..056e62129 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5630,33 +5630,19 @@ qemuBuildMonitorCommandLine(virLogManagerPtr logManager, if (!monitor_chr) return 0; - /* Use -chardev if it's available */ - if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV)) { - - if (!(chrdev = qemuBuildChrChardevStr(logManager, cmd, cfg, def, - monitor_chr, "monitor", - qemuCaps, true, - chardevStdioLogd))) - return -1; - virCommandAddArg(cmd, "-chardev"); - virCommandAddArg(cmd, chrdev); - VIR_FREE(chrdev); - - virCommandAddArg(cmd, "-mon"); - virCommandAddArgFormat(cmd, - "chardev=charmonitor,id=monitor,mode=%s", - monitor_json ? "control" : "readline"); - } else { - const char *prefix = NULL; - if (monitor_json) - prefix = "control,"; + if (!(chrdev = qemuBuildChrChardevStr(logManager, cmd, cfg, def, + monitor_chr, "monitor", + qemuCaps, true, + chardevStdioLogd))) + return -1; + virCommandAddArg(cmd, "-chardev"); + virCommandAddArg(cmd, chrdev); + VIR_FREE(chrdev); - virCommandAddArg(cmd, "-monitor"); - if (!(chrdev = qemuBuildChrArgStr(monitor_chr, prefix))) - return -1; - virCommandAddArg(cmd, chrdev); - VIR_FREE(chrdev); - } + virCommandAddArg(cmd, "-mon"); + virCommandAddArgFormat(cmd, + "chardev=charmonitor,id=monitor,mode=%s", + monitor_json ? "control" : "readline"); return 0; }

On 06/26/2017 02:01 PM, Cole Robinson wrote:
AFAIK there aren't any cases where we will/should hit the old code path for our supported qemu versions, so drop the old code.
Massive test suite churn follows
Signed-off-by: Cole Robinson <crobinso@redhat.com> ---
I trimmed all the test suite churn so it didn't hit mailing list limits. Full patch is attached - Cole

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
AFAIK there aren't any cases where we will/should hit the old code path for our supported qemu versions, so drop the old code.
Massive test suite churn follows
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Several cases have incidental <serial> or <console> XML which aren't the features being tested for. Upcoming changes will cause some churn here, so instead drop these bits now. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.xml | 6 ------ .../qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.xml | 6 ------ tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 1 - tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml | 6 ------ tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml | 6 ------ tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml | 6 ------ tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml | 6 ------ tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml | 6 ------ tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml | 6 ------ 23 files changed, 93 deletions(-) diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args index 887e8b3bb..571c8ae78 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.args @@ -28,5 +28,4 @@ server,nowait \ -drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-scsi0-0-0-0 \ -device scsi-disk,bus=scsi0.0,channel=0,scsi-id=0,lun=0,\ drive=drive-scsi0-0-0-0,id=scsi0-0-0-0 \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.2,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml index f25055734..5eb84c868 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram-secure.xml @@ -28,12 +28,6 @@ </disk> <controller type='scsi' index='0'/> <controller type='pci' index='0' model='pcie-root'/> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.args b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.args index 395d5bbdd..155e605c5 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.args @@ -23,6 +23,5 @@ server,nowait \ -usb \ -drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty \ -device usb-tablet,id=input0,bus=usb.0,port=1 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml index d3a2465f8..9cc7853e4 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml @@ -28,12 +28,6 @@ <controller type='usb' index='0'/> <controller type='ide' index='0'/> <controller type='pci' index='0' model='pci-root'/> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='tablet' bus='usb'/> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args index 046b7e01e..1aead9944 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args @@ -30,5 +30,4 @@ media=cdrom,id=drive-ide0-1-0,readonly=on \ -device virtio-net-pci,tx=bh,vlan=0,id=net0,mac=52:54:00:e5:48:58,bus=pci.0,\ addr=0x3 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml index 9b1fc018d..52b219613 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.xml @@ -40,12 +40,6 @@ <model type='virtio'/> <driver name='vhost' txmode='iothread'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args index 29fc7ba8b..a14fbd19b 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args @@ -30,5 +30,4 @@ media=cdrom,id=drive-ide0-1-0,readonly=on \ -device virtio-net-pci,tx=bh,ioeventfd=off,vlan=0,id=net0,\ mac=52:54:00:e5:48:58,bus=pci.0,addr=0x3 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml index 313150609..55c111772 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.xml @@ -37,11 +37,5 @@ <controller type='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </controller> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> </devices> </domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.args b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.args index d1399bddd..1c9f4f115 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.args @@ -30,5 +30,4 @@ media=cdrom,id=drive-ide0-1-0,readonly=on \ -device virtio-net-pci,event_idx=off,vlan=0,id=net0,mac=52:54:00:e5:48:58,\ bus=pci.0,addr=0x3 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml index 848bfeab9..c17713985 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml @@ -40,12 +40,6 @@ <model type='virtio'/> <driver name='vhost' event_idx='off'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.args b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.args index 9b06db12c..bb9d61395 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.args @@ -29,7 +29,6 @@ media=cdrom,id=drive-ide0-1-0,readonly=on \ -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 \ -device rtl8139,vlan=0,id=net0,mac=52:54:00:71:70:89,bus=pci.0,addr=0x7 \ -net tap,fd=3,vlan=0,name=hostnet0 \ --serial pty \ -device usb-tablet,id=input0,bus=usb.0,port=1 \ -spice port=5900,addr=127.0.0.1 \ -vga std \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml index b8edb7056..b6714e651 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-graphics-spice-timeout.xml @@ -63,12 +63,6 @@ <script path='/etc/qemu-ifup'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='tablet' bus='usb'/> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.args b/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.args index 90ffa6fa8..067cea741 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.args @@ -40,7 +40,6 @@ id=drive-virtio-disk0 \ id=virtio-disk0 \ -drive if=none,media=cdrom,id=drive-ide0-0-0,readonly=on \ -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty \ -chardev socket,id=charchannel0,\ path=/var/lib/libvirt/qemu/channel/target/fedora.org.qemu.guest_agent.0,server,\ nowait \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.xml b/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.xml index 8cda5c6e6..eef471b4e 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-hugepages-numa.xml @@ -70,12 +70,6 @@ <controller type='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </controller> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/fedora.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0'/> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args index 8d8b6e915..3f6148fd5 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.args @@ -25,5 +25,4 @@ server,nowait \ -initrd /media/ram/ramdisk \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -usb \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.xml b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.xml index b6696e2df..7c68cd6aa 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-memory-hotplug-ppc64-nonuma.xml @@ -17,12 +17,6 @@ <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-system-ppc64</emulator> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <memballoon model='virtio'/> <memory model='dimm'> <target> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args b/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args index c536fb0ab..54bc28e0d 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args @@ -28,5 +28,4 @@ id=virtio-disk0 \ id=virtio-disk1 \ -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:e5:48:58,bus=pci.0,addr=0x3 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml b/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml index 5332f72d1..769c129f1 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml +++ b/tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml @@ -39,12 +39,6 @@ <model type='virtio'/> <driver name='vhost' event_idx='off'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'/> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml index 033e86d3a..8e254925b 100644 --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-bios-nvram.xml @@ -32,12 +32,6 @@ <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='pci' index='0' model='pci-root'/> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='tablet' bus='usb'/> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml index 712879873..b5fda01fe 100644 --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-copy_on_read.xml @@ -45,12 +45,6 @@ <driver name='vhost' txmode='iothread'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml index 5c780c74c..4976da899 100644 --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-event_idx.xml @@ -45,12 +45,6 @@ <driver name='vhost' event_idx='off'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml index 8216d6d88..87d04c886 100644 --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-graphics-spice-timeout.xml @@ -68,12 +68,6 @@ <model type='rtl8139'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='tablet' bus='usb'/> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> diff --git a/tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml b/tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml index d08c2edc4..c98e2dc62 100644 --- a/tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml +++ b/tests/qemuxml2xmloutdata/qemuxml2xmlout-virtio-lun.xml @@ -44,12 +44,6 @@ <driver name='vhost' event_idx='off'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> - <serial type='pty'> - <target port='0'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <memballoon model='virtio'> -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
Several cases have incidental <serial> or <console> XML which aren't the features being tested for. Upcoming changes will cause some churn here, so instead drop these bits now.
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

These tests are exercising old style -serial command lines. That code will soon be removed, so drop these tests. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- .../qemuxml2argvdata/qemuxml2argv-serial-dev.args | 24 ------------ tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml | 38 ------------------- .../qemuxml2argvdata/qemuxml2argv-serial-file.args | 24 ------------ .../qemuxml2argvdata/qemuxml2argv-serial-file.xml | 38 ------------------- .../qemuxml2argvdata/qemuxml2argv-serial-many.args | 25 ------------ .../qemuxml2argvdata/qemuxml2argv-serial-many.xml | 40 -------------------- .../qemuxml2argv-serial-tcp-telnet.args | 24 ------------ .../qemuxml2argv-serial-tcp-telnet.xml | 40 -------------------- .../qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 24 ------------ tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml | 40 -------------------- .../qemuxml2argvdata/qemuxml2argv-serial-udp.args | 25 ------------ tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml | 44 ---------------------- .../qemuxml2argvdata/qemuxml2argv-serial-unix.args | 24 ------------ .../qemuxml2argvdata/qemuxml2argv-serial-unix.xml | 38 ------------------- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 24 ------------ tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml | 36 ------------------ tests/qemuxml2argvtest.c | 9 ----- tests/qemuxml2xmltest.c | 9 ----- 18 files changed, 526 deletions(-) delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args deleted file mode 100644 index 82df95903..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial /dev/ttyS2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml deleted file mode 100644 index 42e48ad91..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml +++ /dev/null @@ -1,38 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219100</memory> - <currentMemory unit='KiB'>219100</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='dev'> - <source path='/dev/ttyS2'/> - <target port='0'/> - </serial> - <console type='dev'> - <source path='/dev/ttyS2'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-file.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-file.args deleted file mode 100644 index 2a1d3503a..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-file.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial file:/tmp/serial.log diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml deleted file mode 100644 index ce32ccf26..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml +++ /dev/null @@ -1,38 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='file'> - <source path='/tmp/serial.log'/> - <target port='0'/> - </serial> - <console type='file'> - <source path='/tmp/serial.log'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-many.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-many.args deleted file mode 100644 index 8a4798884..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-many.args +++ /dev/null @@ -1,25 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty \ --serial file:/tmp/serial.log diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml deleted file mode 100644 index 87b6764ab..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml +++ /dev/null @@ -1,40 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='pty'> - <target port='0'/> - </serial> - <serial type='file'> - <source path='/tmp/serial.log'/> - <target port='1'/> - </serial> - <console type='pty'> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args deleted file mode 100644 index 465dcd5dd..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial telnet:127.0.0.1:9999,server,nowait diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml deleted file mode 100644 index b865405e6..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml +++ /dev/null @@ -1,40 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219100</memory> - <currentMemory unit='KiB'>219100</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='tcp'> - <source mode='bind' host='127.0.0.1' service='9999'/> - <protocol type='telnet'/> - <target port='0'/> - </serial> - <console type='tcp'> - <source mode='bind' host='127.0.0.1' service='9999'/> - <protocol type='telnet'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args deleted file mode 100644 index 589455908..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial tcp:127.0.0.1:9999 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml deleted file mode 100644 index 82ea26a8e..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml +++ /dev/null @@ -1,40 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219100</memory> - <currentMemory unit='KiB'>219100</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='tcp'> - <source mode='connect' host='127.0.0.1' service='9999'/> - <protocol type='raw'/> - <target port='0'/> - </serial> - <console type='tcp'> - <source mode='connect' host='127.0.0.1' service='9999'/> - <protocol type='raw'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args deleted file mode 100644 index 3dff6c39c..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args +++ /dev/null @@ -1,25 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial udp:127.0.0.1:9998@127.0.0.1:9999 \ --serial udp::9999@:0 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml deleted file mode 100644 index 0b10b0fd0..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml +++ /dev/null @@ -1,44 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='udp'> - <source mode='bind' host='127.0.0.1' service='9999'/> - <source mode='connect' host='127.0.0.1' service='9998'/> - <target port='0'/> - </serial> - <serial type='udp'> - <source mode='connect' service='9999'/> - <target port='1'/> - </serial> - <console type='udp'> - <source mode='bind' host='127.0.0.1' service='9999'/> - <source mode='connect' host='127.0.0.1' service='9998'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args deleted file mode 100644 index de7fdc635..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial unix:/tmp/serial.sock diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml deleted file mode 100644 index 405fd1632..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml +++ /dev/null @@ -1,38 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219136</memory> - <currentMemory unit='KiB'>219136</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='unix'> - <source mode='connect' path='/tmp/serial.sock'/> - <target port='0'/> - </serial> - <console type='unix'> - <source mode='connect' path='/tmp/serial.sock'/> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args deleted file mode 100644 index d4480ca0c..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args +++ /dev/null @@ -1,24 +0,0 @@ -LC_ALL=C \ -PATH=/bin \ -HOME=/home/test \ -USER=test \ -LOGNAME=test \ -QEMU_AUDIO_DRV=none \ -/usr/bin/qemu-system-i686 \ --name QEMUGuest1 \ --S \ --M pc \ --m 214 \ --smp 1,sockets=1,cores=1,threads=1 \ --uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \ --nographic \ --nodefaults \ --chardev socket,id=charmonitor,path=/tmp/lib/domain--1-QEMUGuest1/monitor.sock,\ -server,nowait \ --mon chardev=charmonitor,id=monitor,mode=readline \ --no-acpi \ --boot c \ --usb \ --drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ --device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial vc diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml b/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml deleted file mode 100644 index 27d3f963e..000000000 --- a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml +++ /dev/null @@ -1,36 +0,0 @@ -<domain type='qemu'> - <name>QEMUGuest1</name> - <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> - <memory unit='KiB'>219100</memory> - <currentMemory unit='KiB'>219100</currentMemory> - <vcpu placement='static'>1</vcpu> - <os> - <type arch='i686' machine='pc'>hvm</type> - <boot dev='hd'/> - </os> - <clock offset='utc'/> - <on_poweroff>destroy</on_poweroff> - <on_reboot>restart</on_reboot> - <on_crash>destroy</on_crash> - <devices> - <emulator>/usr/bin/qemu-system-i686</emulator> - <disk type='block' device='disk'> - <driver name='qemu' type='raw'/> - <source dev='/dev/HostVG/QEMUGuest1'/> - <target dev='hda' bus='ide'/> - <address type='drive' controller='0' bus='0' target='0' unit='0'/> - </disk> - <controller type='usb' index='0'/> - <controller type='ide' index='0'/> - <controller type='pci' index='0' model='pci-root'/> - <serial type='vc'> - <target port='0'/> - </serial> - <console type='vc'> - <target type='serial' port='0'/> - </console> - <input type='mouse' bus='ps2'/> - <input type='keyboard' bus='ps2'/> - <memballoon model='none'/> - </devices> -</domain> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 3610c71bf..2b81f9917 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -1168,17 +1168,8 @@ mymain(void) QEMU_CAPS_DEVICE_VFIO_PCI); - DO_TEST("serial-vc", NONE); - DO_TEST("serial-pty", NONE); - DO_TEST("serial-dev", NONE); - DO_TEST("serial-file", NONE); DO_TEST("serial-file-log", QEMU_CAPS_CHARDEV, QEMU_CAPS_CHARDEV_FILE_APPEND, QEMU_CAPS_CHARDEV_LOGFILE); - DO_TEST("serial-unix", NONE); - DO_TEST("serial-tcp", NONE); - DO_TEST("serial-udp", NONE); - DO_TEST("serial-tcp-telnet", NONE); - DO_TEST("serial-many", NONE); DO_TEST("serial-spiceport", QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIDEO_PRIMARY, diff --git a/tests/qemuxml2xmltest.c b/tests/qemuxml2xmltest.c index dd4cc2452..a25fad7cf 100644 --- a/tests/qemuxml2xmltest.c +++ b/tests/qemuxml2xmltest.c @@ -536,17 +536,8 @@ mymain(void) DO_TEST("net-mtu", NONE); DO_TEST("net-coalesce", NONE); - DO_TEST("serial-vc", NONE); - DO_TEST("serial-pty", NONE); - DO_TEST("serial-dev", NONE); - DO_TEST("serial-file", NONE); - DO_TEST("serial-unix", NONE); - DO_TEST("serial-tcp", NONE); - DO_TEST("serial-udp", NONE); - DO_TEST("serial-tcp-telnet", NONE); DO_TEST("serial-tcp-tlsx509-chardev", NONE); DO_TEST("serial-tcp-tlsx509-chardev-notls", NONE); - DO_TEST("serial-many", NONE); DO_TEST("serial-spiceport", NONE); DO_TEST("serial-spiceport-nospice", NONE); DO_TEST("console-compat", NONE); -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
These tests are exercising old style -serial command lines. That code will soon be removed, so drop these tests.
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Several tests are intending to test some serial/console related bits but aren't setting QEMU_CAPS_CHARDEV. This will soon be enabled unconditionally so let's add it ahead of time. * q35-virt-manager-basic: Intended to test a virt-manager q35 config, which will include a serial/console device * console-compat*: console/serial XML compat handling * bios: Needs a serial device for sgabios CLI Signed-off-by: Cole Robinson <crobinso@redhat.com> --- tests/qemuxml2argvdata/qemuxml2argv-bios.args | 3 ++- tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args | 3 ++- tests/qemuxml2argvdata/qemuxml2argv-console-compat.args | 3 ++- tests/qemuxml2argvdata/qemuxml2argv-q35-virt-manager-basic.args | 3 ++- tests/qemuxml2argvtest.c | 7 ++++--- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/tests/qemuxml2argvdata/qemuxml2argv-bios.args b/tests/qemuxml2argvdata/qemuxml2argv-bios.args index 6f4d66de4..048d4ff96 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-bios.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-bios.args @@ -23,6 +23,7 @@ server,nowait \ -usb \ -drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0 \ -device usb-tablet,id=input0,bus=usb.0,port=1 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args b/tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args index 5b2673367..cab47dbb5 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args @@ -21,5 +21,6 @@ server,nowait \ -usb \ -drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-console-compat.args b/tests/qemuxml2argvdata/qemuxml2argv-console-compat.args index be3ed2e30..fb96946f1 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-console-compat.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-console-compat.args @@ -21,4 +21,5 @@ server,nowait \ -usb \ -drive file=/dev/HostVG/QEMUGuest1,format=raw,if=none,id=drive-ide0-0-0 \ -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 \ --serial pty +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-q35-virt-manager-basic.args b/tests/qemuxml2argvdata/qemuxml2argv-q35-virt-manager-basic.args index 0d659590c..96d2ae592 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-q35-virt-manager-basic.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-q35-virt-manager-basic.args @@ -37,7 +37,8 @@ id=virtio-disk0 \ -netdev user,id=hostnet0 \ -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:9a:e6:c6,bus=pci.1,\ addr=0x0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-device isa-serial,chardev=charserial0,id=serial0 \ -chardev socket,id=charchannel0,\ path=/tmp/channel/domain--1-virt-manager-basic/org.qemu.guest_agent.0,server,\ nowait \ diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 2b81f9917..626aebfed 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -739,7 +739,7 @@ mymain(void) DO_TEST("reboot-timeout-enabled", QEMU_CAPS_REBOOT_TIMEOUT); DO_TEST_FAILURE("reboot-timeout-enabled", NONE); - DO_TEST("bios", QEMU_CAPS_SGA); + DO_TEST("bios", QEMU_CAPS_SGA, QEMU_CAPS_CHARDEV); DO_TEST("bios-nvram", NONE); DO_TEST("bios-nvram-secure", QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, @@ -1177,8 +1177,8 @@ mymain(void) QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEPORT); DO_TEST("serial-spiceport-nospice", NONE); - DO_TEST("console-compat", NONE); - DO_TEST("console-compat-auto", NONE); + DO_TEST("console-compat", QEMU_CAPS_CHARDEV); + DO_TEST("console-compat-auto", QEMU_CAPS_CHARDEV); DO_TEST("serial-vc-chardev", QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); @@ -2001,6 +2001,7 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY); DO_TEST("q35-virt-manager-basic", QEMU_CAPS_KVM, + QEMU_CAPS_CHARDEV, QEMU_CAPS_RTC, QEMU_CAPS_ICH9_DISABLE_S3, QEMU_CAPS_ICH9_DISABLE_S4, -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
Several tests are intending to test some serial/console related bits but aren't setting QEMU_CAPS_CHARDEV. This will soon be enabled unconditionally so let's add it ahead of time.
* q35-virt-manager-basic: Intended to test a virt-manager q35 config, which will include a serial/console device * console-compat*: console/serial XML compat handling * bios: Needs a serial device for sgabios CLI
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Every qemu version we support has QEMU_CAPS_CHARDEV, so stop explicitly tracking it and blacklist it like we've done for many other feature flags. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_capabilities.c | 17 +- src/qemu/qemu_capabilities.h | 2 +- tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml | 1 - .../caps_2.6.0-gicv2.aarch64.xml | 1 - .../caps_2.6.0-gicv3.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml | 1 - tests/qemuhelptest.c | 5 - tests/qemuxml2argvtest.c | 192 ++++++++++----------- 23 files changed, 97 insertions(+), 138 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index d0bc50bd7..a20f405c2 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -1275,13 +1275,10 @@ virQEMUCapsComputeCmdFlags(const char *help, virQEMUCapsSet(qemuCaps, QEMU_CAPS_HOST_PCI_MULTIDOMAIN); if (strstr(help, "-mem-path")) virQEMUCapsSet(qemuCaps, QEMU_CAPS_MEM_PATH); - if (strstr(help, "-chardev")) { - virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV); - if (strstr(help, "-chardev spicevmc")) - virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEVMC); - if (strstr(help, "-chardev spiceport")) - virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEPORT); - } + if (strstr(help, "-chardev spicevmc")) + virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEVMC); + if (strstr(help, "-chardev spiceport")) + virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEPORT); if (strstr(help, "-nodefconfig")) virQEMUCapsSet(qemuCaps, QEMU_CAPS_NODEFCONFIG); if (strstr(help, "-no-user-config")) @@ -4467,7 +4464,6 @@ virQEMUCapsInitQMPBasic(virQEMUCapsPtr qemuCaps) { virQEMUCapsSet(qemuCaps, QEMU_CAPS_MEM_PATH); virQEMUCapsSet(qemuCaps, QEMU_CAPS_DRIVE_SERIAL); - virQEMUCapsSet(qemuCaps, QEMU_CAPS_CHARDEV); virQEMUCapsSet(qemuCaps, QEMU_CAPS_MONITOR_JSON); virQEMUCapsSet(qemuCaps, QEMU_CAPS_SDL); virQEMUCapsSet(qemuCaps, QEMU_CAPS_NETDEV); @@ -5555,12 +5551,9 @@ virQEMUCapsCacheFree(virQEMUCapsCachePtr cache) bool virQEMUCapsSupportsChardev(const virDomainDef *def, - virQEMUCapsPtr qemuCaps, + virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED, virDomainChrDefPtr chr) { - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CHARDEV)) - return false; - if ((def->os.arch == VIR_ARCH_PPC) || ARCH_IS_PPC64(def->os.arch)) { if (!qemuDomainIsPSeries(def)) return false; diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 6e95876e8..829cbaadb 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -77,7 +77,7 @@ typedef enum { /* 20 */ X_QEMU_CAPS_XEN_DOMID, /* -xen-domid */ X_QEMU_CAPS_MIGRATE_QEMU_UNIX, /* qemu migration via unix sockets */ - QEMU_CAPS_CHARDEV, /* Is the new -chardev arg available */ + X_QEMU_CAPS_CHARDEV, /* Is the new -chardev arg available */ QEMU_CAPS_ENABLE_KVM, /* -enable-kvm flag */ QEMU_CAPS_MONITOR_JSON, /* JSON mode for monitor */ diff --git a/tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml index 5ad406ce1..956284d5d 100644 --- a/tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml index 4ec731d65..99384ce5e 100644 --- a/tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml index 601c62e65..aea043c57 100644 --- a/tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml index 14f34b277..6f860e4f2 100644 --- a/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml index 8fc23d6aa..e5dc8360d 100644 --- a/tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml index 47c8956b4..86d87eaf0 100644 --- a/tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml index afe7d53ff..2fa551b1a 100644 --- a/tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml index 5bdc1a2bd..b7ba2240a 100644 --- a/tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml index 36bc1342b..f3289df30 100644 --- a/tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.6.0-gicv2.aarch64.xml b/tests/qemucapabilitiesdata/caps_2.6.0-gicv2.aarch64.xml index 33bc46208..af60bf6c6 100644 --- a/tests/qemucapabilitiesdata/caps_2.6.0-gicv2.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_2.6.0-gicv2.aarch64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.6.0-gicv3.aarch64.xml b/tests/qemucapabilitiesdata/caps_2.6.0-gicv3.aarch64.xml index a8ce6b03b..d4eb19102 100644 --- a/tests/qemucapabilitiesdata/caps_2.6.0-gicv3.aarch64.xml +++ b/tests/qemucapabilitiesdata/caps_2.6.0-gicv3.aarch64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml b/tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml index 425992f0d..6d031f6f7 100644 --- a/tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml +++ b/tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml index 97e71ec4f..e4615c02a 100644 --- a/tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml index 70cce6417..ec79115cf 100644 --- a/tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml index 49c046212..5f98db8d1 100644 --- a/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml b/tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml index 51be9bce4..ac40ecc7f 100644 --- a/tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml index 01edbc88d..e42e47a8e 100644 --- a/tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml index 58dd9f637..ae1530b5e 100644 --- a/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml +++ b/tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml b/tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml index 7d46128fd..b9fdd0227 100644 --- a/tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml +++ b/tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml @@ -6,7 +6,6 @@ <flag name='kvm'/> <flag name='mem-path'/> <flag name='drive-serial'/> - <flag name='chardev'/> <flag name='monitor-json'/> <flag name='sdl'/> <flag name='netdev'/> diff --git a/tests/qemuhelptest.c b/tests/qemuhelptest.c index d80225c1d..7485d2dcd 100644 --- a/tests/qemuhelptest.c +++ b/tests/qemuhelptest.c @@ -159,7 +159,6 @@ mymain(void) QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_SDL, - QEMU_CAPS_CHARDEV, QEMU_CAPS_RTC, QEMU_CAPS_NO_HPET, QEMU_CAPS_BOOT_MENU, @@ -192,7 +191,6 @@ mymain(void) QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_MEM_PATH, QEMU_CAPS_SDL, - QEMU_CAPS_CHARDEV, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_RTC, QEMU_CAPS_NO_HPET, @@ -230,7 +228,6 @@ mymain(void) QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_MEM_PATH, QEMU_CAPS_SDL, - QEMU_CAPS_CHARDEV, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NETDEV, @@ -277,7 +274,6 @@ mymain(void) QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_MEM_PATH, QEMU_CAPS_SDL, - QEMU_CAPS_CHARDEV, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NETDEV, @@ -348,7 +344,6 @@ mymain(void) QEMU_CAPS_DRIVE_SERIAL, QEMU_CAPS_MEM_PATH, QEMU_CAPS_SDL, - QEMU_CAPS_CHARDEV, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NETDEV, diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c index 626aebfed..af0b9314e 100644 --- a/tests/qemuxml2argvtest.c +++ b/tests/qemuxml2argvtest.c @@ -739,7 +739,7 @@ mymain(void) DO_TEST("reboot-timeout-enabled", QEMU_CAPS_REBOOT_TIMEOUT); DO_TEST_FAILURE("reboot-timeout-enabled", NONE); - DO_TEST("bios", QEMU_CAPS_SGA, QEMU_CAPS_CHARDEV); + DO_TEST("bios", QEMU_CAPS_SGA); DO_TEST("bios-nvram", NONE); DO_TEST("bios-nvram-secure", QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, @@ -774,7 +774,7 @@ mymain(void) QEMU_CAPS_KVM, QEMU_CAPS_ENABLE_KVM, QEMU_CAPS_BOOT_MENU, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_DRIVE_AIO, - QEMU_CAPS_CCID_PASSTHRU, QEMU_CAPS_CHARDEV, + QEMU_CAPS_CCID_PASSTHRU, QEMU_CAPS_CHARDEV_SPICEVMC, QEMU_CAPS_SPICE, QEMU_CAPS_HDA_DUPLEX, QEMU_CAPS_USB_HUB, QEMU_CAPS_DEVICE_CIRRUS_VGA); @@ -1085,7 +1085,7 @@ mymain(void) QEMU_CAPS_DEVICE_QXL); DO_TEST("graphics-spice-usb-redir", QEMU_CAPS_SPICE, - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, QEMU_CAPS_CHARDEV_SPICEVMC, QEMU_CAPS_DEVICE_CIRRUS_VGA); @@ -1168,48 +1168,47 @@ mymain(void) QEMU_CAPS_DEVICE_VFIO_PCI); - DO_TEST("serial-file-log", QEMU_CAPS_CHARDEV, QEMU_CAPS_CHARDEV_FILE_APPEND, + DO_TEST("serial-file-log", QEMU_CAPS_CHARDEV_FILE_APPEND, QEMU_CAPS_CHARDEV_LOGFILE); DO_TEST("serial-spiceport", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIDEO_PRIMARY, QEMU_CAPS_DEVICE_QXL, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEPORT); DO_TEST("serial-spiceport-nospice", NONE); - DO_TEST("console-compat", QEMU_CAPS_CHARDEV); - DO_TEST("console-compat-auto", QEMU_CAPS_CHARDEV); + DO_TEST("console-compat", NONE); + DO_TEST("console-compat-auto", NONE); DO_TEST("serial-vc-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-pty-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-dev-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-dev-chardev-iobase", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-file-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV_FILE_APPEND); DO_TEST("serial-unix-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-tcp-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-udp-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("serial-tcp-telnet-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); driver.config->chardevTLS = 1; DO_TEST("serial-tcp-tlsx509-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_OBJECT_TLS_CREDS_X509); driver.config->chardevTLSx509verify = 1; DO_TEST("serial-tcp-tlsx509-chardev-verify", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_OBJECT_TLS_CREDS_X509); driver.config->chardevTLSx509verify = 0; DO_TEST("serial-tcp-tlsx509-chardev-notls", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_OBJECT_TLS_CREDS_X509); VIR_FREE(driver.config->chardevTLSx509certdir); if (VIR_STRDUP_QUIET(driver.config->chardevTLSx509certdir, "/etc/pki/libvirt-chardev") < 0) @@ -1219,54 +1218,54 @@ mymain(void) return EXIT_FAILURE; # ifdef HAVE_GNUTLS_CIPHER_ENCRYPT DO_TEST("serial-tcp-tlsx509-secret-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_OBJECT_SECRET, QEMU_CAPS_OBJECT_TLS_CREDS_X509); # else DO_TEST_FAILURE("serial-tcp-tlsx509-secret-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_OBJECT_SECRET, QEMU_CAPS_OBJECT_TLS_CREDS_X509); # endif driver.config->chardevTLS = 0; VIR_FREE(driver.config->chardevTLSx509certdir); DO_TEST("serial-many-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("parallel-tcp-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("parallel-parport-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("console-compat-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pci-serial-dev-chardev", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_PCI_SERIAL); DO_TEST("channel-guestfwd", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("channel-virtio", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("channel-virtio-state", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("channel-virtio-auto", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("channel-virtio-autoassign", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("channel-virtio-autoadd", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("console-virtio", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("console-virtio-many", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("console-virtio-s390", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_S390); DO_TEST("console-virtio-ccw", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_CCW, QEMU_CAPS_VIRTIO_S390); DO_TEST("console-sclp", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_VIRTIO_S390, QEMU_CAPS_SCLP_S390); DO_TEST("channel-spicevmc", QEMU_CAPS_NODEFCONFIG, @@ -1277,113 +1276,108 @@ mymain(void) QEMU_CAPS_SPICE, QEMU_CAPS_DEVICE_SPICEVMC, QEMU_CAPS_DEVICE_CIRRUS_VGA); DO_TEST("channel-virtio-default", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC); DO_TEST("channel-virtio-unix", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("smartcard-host", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CCID_EMULATED); DO_TEST("smartcard-host-certificates", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CCID_EMULATED); DO_TEST("smartcard-passthrough-tcp", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CCID_PASSTHRU); DO_TEST("smartcard-passthrough-spicevmc", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CCID_PASSTHRU, QEMU_CAPS_CHARDEV_SPICEVMC); DO_TEST("smartcard-controller", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CCID_EMULATED); DO_TEST("usb-controller", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-piix3-controller", - QEMU_CAPS_CHARDEV, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-ich9-ehci-addr", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1); DO_TEST("input-usbmouse-addr", QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-ich9-companion", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1); DO_TEST_PARSE_ERROR("usb-ich9-no-companion", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1); DO_TEST("usb-ich9-autoassign", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_HUB); DO_TEST("usb-hub", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-hub-autoadd", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-hub-autoadd-deluxe", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-hub-conflict", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-hub-nonexistent", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-port-missing", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-bus-missing", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-ports", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-ports-out-of-range", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-port-autoassign", - QEMU_CAPS_CHARDEV, QEMU_CAPS_USB_HUB, + QEMU_CAPS_USB_HUB, QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-redir", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC); DO_TEST("usb-redir-boot", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_USB_REDIR_BOOTINDEX); DO_TEST("usb-redir-filter", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_USB_HUB, QEMU_CAPS_ICH9_USB_EHCI1, QEMU_CAPS_USB_REDIR, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC, QEMU_CAPS_USB_REDIR_FILTER); DO_TEST("usb-redir-filter-version", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_USB_REDIR, QEMU_CAPS_SPICE, QEMU_CAPS_CHARDEV_SPICEVMC, QEMU_CAPS_USB_REDIR_FILTER); DO_TEST("usb1-usb2", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_USB_HUB, QEMU_CAPS_ICH9_USB_EHCI1); DO_TEST("usb-none", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-none-other", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("usb-none-hub", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_USB_HUB); DO_TEST_PARSE_ERROR("usb-none-usbtablet", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("usb-controller-default-q35", QEMU_CAPS_DEVICE_IOH3420, QEMU_CAPS_PCI_OHCI, @@ -1403,14 +1397,14 @@ mymain(void) QEMU_CAPS_PCI_OHCI, QEMU_CAPS_PIIX3_USB_UHCI); DO_TEST("usb-controller-xhci", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_NEC_USB_XHCI, QEMU_CAPS_NEC_USB_XHCI_PORTS); DO_TEST("usb-xhci-autoassign", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_NEC_USB_XHCI, QEMU_CAPS_NEC_USB_XHCI_PORTS, QEMU_CAPS_USB_HUB); DO_TEST_PARSE_ERROR("usb-controller-xhci-limit", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_NEC_USB_XHCI, QEMU_CAPS_NEC_USB_XHCI_PORTS); DO_TEST("usb-controller-qemu-xhci", QEMU_CAPS_DEVICE_QEMU_XHCI); DO_TEST_FAILURE("usb-controller-qemu-xhci-unavailable", NONE); @@ -1426,7 +1420,7 @@ mymain(void) DO_TEST("watchdog-dump", NONE); DO_TEST("watchdog-injectnmi", NONE); DO_TEST("watchdog-diag288", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_S390); DO_TEST("balloon-device", QEMU_CAPS_NODEFCONFIG); DO_TEST("balloon-device-deflate", QEMU_CAPS_NODEFCONFIG, @@ -1624,9 +1618,9 @@ mymain(void) QEMU_CAPS_PCI_MULTIFUNCTION, QEMU_CAPS_SCSI_LSI); DO_TEST("monitor-json", - QEMU_CAPS_CHARDEV, QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NODEFCONFIG); DO_TEST("no-shutdown", - QEMU_CAPS_CHARDEV, QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_MONITOR_JSON, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_NO_SHUTDOWN); DO_TEST("seclabel-dynamic", NONE); @@ -1643,48 +1637,46 @@ mymain(void) DO_TEST_PARSE_ERROR("seclabel-device-duplicates", NONE); DO_TEST("pseries-basic", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pseries-vio", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pseries-usb-default", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_PCI_OHCI, QEMU_CAPS_PCI_MULTIFUNCTION); DO_TEST("pseries-usb-multi", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, QEMU_CAPS_PCI_OHCI, QEMU_CAPS_PCI_MULTIFUNCTION); DO_TEST("pseries-vio-user-assigned", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST_PARSE_ERROR("pseries-vio-address-clash", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pseries-nvram", QEMU_CAPS_DEVICE_NVRAM); DO_TEST("pseries-usb-kbd", QEMU_CAPS_PCI_OHCI, - QEMU_CAPS_DEVICE_USB_KBD, QEMU_CAPS_CHARDEV, + QEMU_CAPS_DEVICE_USB_KBD, QEMU_CAPS_NODEFCONFIG); - DO_TEST("pseries-cpu-exact", QEMU_CAPS_CHARDEV, + DO_TEST("pseries-cpu-exact", QEMU_CAPS_NODEFCONFIG); qemuTestSetHostArch(driver.caps, VIR_ARCH_PPC64); DO_TEST("pseries-cpu-compat", QEMU_CAPS_KVM, - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pseries-cpu-le", QEMU_CAPS_KVM, - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST_FAILURE("pseries-cpu-compat-power9", QEMU_CAPS_KVM); qemuTestSetHostCPU(driver.caps, cpuPower9); DO_TEST("pseries-cpu-compat-power9", - QEMU_CAPS_KVM, QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_KVM, QEMU_CAPS_NODEFCONFIG); qemuTestSetHostCPU(driver.caps, NULL); qemuTestSetHostArch(driver.caps, VIR_ARCH_NONE); DO_TEST("pseries-panic-missing", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("pseries-panic-no-address", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST_FAILURE("pseries-panic-address", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG); + QEMU_CAPS_NODEFCONFIG); DO_TEST("disk-ide-drive-split", QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_IDE_CD); @@ -1766,32 +1758,32 @@ mymain(void) DO_TEST_PARSE_ERROR("virtio-rng-egd-crash", QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_EGD); DO_TEST("virtio-rng-ccw", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_CCW, QEMU_CAPS_VIRTIO_S390, QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_RANDOM); DO_TEST("s390-allow-bogus-usb-none", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_S390, QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_RANDOM); DO_TEST("s390-allow-bogus-usb-controller", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_BOOTINDEX, QEMU_CAPS_VIRTIO_S390, QEMU_CAPS_DEVICE_VIRTIO_RNG, QEMU_CAPS_OBJECT_RNG_RANDOM); DO_TEST("s390-panic-no-address", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_VIRTIO_CCW, QEMU_CAPS_VIRTIO_S390); DO_TEST_FAILURE("s390-panic-address", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_VIRTIO_CCW, QEMU_CAPS_VIRTIO_S390); DO_TEST("s390-panic-missing", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_VIRTIO_CCW, QEMU_CAPS_VIRTIO_S390); DO_TEST("ppc-dtb", QEMU_CAPS_KVM, QEMU_CAPS_DTB); - DO_TEST("ppce500-serial", QEMU_CAPS_KVM, QEMU_CAPS_CHARDEV); + DO_TEST("ppce500-serial", QEMU_CAPS_KVM); DO_TEST("tpm-passthrough", QEMU_CAPS_DEVICE_TPM_PASSTHROUGH, QEMU_CAPS_DEVICE_TPM_TIS); @@ -2001,7 +1993,6 @@ mymain(void) QEMU_CAPS_DEVICE_VIDEO_PRIMARY); DO_TEST("q35-virt-manager-basic", QEMU_CAPS_KVM, - QEMU_CAPS_CHARDEV, QEMU_CAPS_RTC, QEMU_CAPS_ICH9_DISABLE_S3, QEMU_CAPS_ICH9_DISABLE_S4, @@ -2334,7 +2325,7 @@ mymain(void) QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO, QEMU_CAPS_KVM); DO_TEST("aarch64-pci-serial", - QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_CHARDEV_LOGFILE, QEMU_CAPS_OBJECT_GPEX, QEMU_CAPS_DEVICE_PCI_BRIDGE, QEMU_CAPS_PCI_MULTIFUNCTION, @@ -2528,16 +2519,15 @@ mymain(void) NONE); DO_TEST("name-escape", QEMU_CAPS_NAME_DEBUG_THREADS, - QEMU_CAPS_OBJECT_SECRET, QEMU_CAPS_CHARDEV, QEMU_CAPS_VNC, + QEMU_CAPS_OBJECT_SECRET, QEMU_CAPS_VNC, QEMU_CAPS_NAME_GUEST, QEMU_CAPS_DEVICE_CIRRUS_VGA, QEMU_CAPS_SPICE, QEMU_CAPS_SPICE_UNIX); DO_TEST("debug-threads", QEMU_CAPS_NAME_DEBUG_THREADS); DO_TEST("master-key", QEMU_CAPS_OBJECT_SECRET); - DO_TEST("usb-long-port-path", QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, + DO_TEST("usb-long-port-path", QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_USB_HUB); DO_TEST_PARSE_ERROR("usb-too-long-port-path-invalid", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_USB_HUB); DO_TEST("acpi-table", NONE); -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
@@ -5555,12 +5551,9 @@ virQEMUCapsCacheFree(virQEMUCapsCachePtr cache) bool virQEMUCapsSupportsChardev(const virDomainDef *def, - virQEMUCapsPtr qemuCaps, + virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED,
I know you're going to get rid of @qemuCaps when you rename the function later on, but I think you should go ahead and get rid of it in this commit instead, at the same time as you remove its only use.
@@ -1403,14 +1397,14 @@ mymain(void) QEMU_CAPS_PCI_OHCI, QEMU_CAPS_PIIX3_USB_UHCI); DO_TEST("usb-controller-xhci", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI,
Here, and in a few other instances, since you're going to touch the line in any case you can take advantage of the opportunity and make sure each of the remaining capabilities is on its own line so that future tweaking will result in smaller diffs. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

On 07/07/2017 09:52 AM, Andrea Bolognani wrote:
On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
@@ -5555,12 +5551,9 @@ virQEMUCapsCacheFree(virQEMUCapsCachePtr cache)
bool virQEMUCapsSupportsChardev(const virDomainDef *def, - virQEMUCapsPtr qemuCaps, + virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED,
I know you're going to get rid of @qemuCaps when you rename the function later on, but I think you should go ahead and get rid of it in this commit instead, at the same time as you remove its only use.
Thanks for your review! I see your argument but to do this fully the result would be a lot of churn that distracts from the goal of the patch. Plus when you pull on this thread a lot comes out: - remove qemuCaps from all SupportsChardev callers... -- which requires removing the now unused qemuCaps in ProcessLookupPTYs --- which requires removing the now unused qemuCaps in qemuProcessFindCharDevicePTYsMonitor --- which requires removing the now unused qemuCaps in qemuProcessWaitForMonitor I'll leave this as is here and send an additional patch to handle ProcessLookupPTYs
@@ -1403,14 +1397,14 @@ mymain(void) QEMU_CAPS_PCI_OHCI, QEMU_CAPS_PIIX3_USB_UHCI); DO_TEST("usb-controller-xhci", - QEMU_CAPS_CHARDEV, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI, + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_PIIX3_USB_UHCI,
Here, and in a few other instances, since you're going to touch the line in any case you can take advantage of the opportunity and make sure each of the remaining capabilities is on its own line so that future tweaking will result in smaller diffs.
I'll try to fix all instances of this Thanks, Cole

Some qemu arch/machine types have built in platform devices that are always implicitly available. For platform serial devices, the current code assumes that only old style -serial config can be used for these devices. Apparently though since -chardev was introduced, we can use -chardev in these cases, like this: -chardev pty,id=foo -serial chardev:foo Since -chardev enables all sorts of modern features, use this method for platform devices. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- note: I only gave this light testing with a very new qemu, just made sure console output was still working. I'd appreciate if other folks can test it as well to make sure extra features like <log> work as expected src/qemu/qemu_command.c | 125 ++------------------- src/qemu/qemu_process.c | 9 +- .../qemuxml2argv-aarch64-kvm-32-on-64.args | 3 +- ...l2argv-aarch64-virt-2.6-virtio-pci-default.args | 3 +- .../qemuxml2argv-aarch64-virt-virtio.args | 3 +- .../qemuxml2argv-aarch64-virtio-pci-default.args | 3 +- .../qemuxml2argv-arm-vexpressa9-basic.args | 3 +- .../qemuxml2argv-arm-vexpressa9-virtio.args | 3 +- .../qemuxml2argv-arm-virt-virtio.args | 3 +- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 3 +- .../qemuxml2argv-ppce500-serial.args | 3 +- 11 files changed, 32 insertions(+), 129 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 056e62129..3e82ca086 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5514,106 +5514,6 @@ qemuBuildHostdevCommandLine(virCommandPtr cmd, return 0; } -static char * -qemuBuildChrArgStr(const virDomainChrSourceDef *dev, - const char *prefix) -{ - virBuffer buf = VIR_BUFFER_INITIALIZER; - - if (dev->logfile) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("logfile not supported in this QEMU binary")); - goto error; - } - - if (prefix) - virBufferAdd(&buf, prefix, strlen(prefix)); - - switch ((virDomainChrType)dev->type) { - case VIR_DOMAIN_CHR_TYPE_NULL: - virBufferAddLit(&buf, "null"); - break; - - case VIR_DOMAIN_CHR_TYPE_VC: - virBufferAddLit(&buf, "vc"); - break; - - case VIR_DOMAIN_CHR_TYPE_PTY: - virBufferAddLit(&buf, "pty"); - break; - - case VIR_DOMAIN_CHR_TYPE_DEV: - virBufferStrcat(&buf, dev->data.file.path, NULL); - break; - - case VIR_DOMAIN_CHR_TYPE_FILE: - virBufferAsprintf(&buf, "file:%s", dev->data.file.path); - break; - - case VIR_DOMAIN_CHR_TYPE_PIPE: - virBufferAsprintf(&buf, "pipe:%s", dev->data.file.path); - break; - - case VIR_DOMAIN_CHR_TYPE_STDIO: - virBufferAddLit(&buf, "stdio"); - break; - - case VIR_DOMAIN_CHR_TYPE_UDP: { - const char *connectHost = dev->data.udp.connectHost; - const char *bindHost = dev->data.udp.bindHost; - const char *bindService = dev->data.udp.bindService; - - if (connectHost == NULL) - connectHost = ""; - if (bindHost == NULL) - bindHost = ""; - if (bindService == NULL) - bindService = "0"; - - virBufferAsprintf(&buf, "udp:%s:%s@%s:%s", - connectHost, - dev->data.udp.connectService, - bindHost, - bindService); - break; - } - case VIR_DOMAIN_CHR_TYPE_TCP: - if (dev->data.tcp.protocol == VIR_DOMAIN_CHR_TCP_PROTOCOL_TELNET) { - virBufferAsprintf(&buf, "telnet:%s:%s%s", - dev->data.tcp.host, - dev->data.tcp.service, - dev->data.tcp.listen ? ",server,nowait" : ""); - } else { - virBufferAsprintf(&buf, "tcp:%s:%s%s", - dev->data.tcp.host, - dev->data.tcp.service, - dev->data.tcp.listen ? ",server,nowait" : ""); - } - break; - - case VIR_DOMAIN_CHR_TYPE_UNIX: - virBufferAsprintf(&buf, "unix:%s%s", - dev->data.nix.path, - dev->data.nix.listen ? ",server,nowait" : ""); - break; - - case VIR_DOMAIN_CHR_TYPE_SPICEVMC: - case VIR_DOMAIN_CHR_TYPE_SPICEPORT: - case VIR_DOMAIN_CHR_TYPE_NMDM: - case VIR_DOMAIN_CHR_TYPE_LAST: - break; - } - - if (virBufferCheckError(&buf) < 0) - goto error; - - return virBufferContentAndReset(&buf); - - error: - virBufferFreeAndReset(&buf); - return NULL; -} - static int qemuBuildMonitorCommandLine(virLogManagerPtr logManager, @@ -9226,26 +9126,23 @@ qemuBuildSerialCommandLine(virLogManagerPtr logManager, if (serial->source->type == VIR_DOMAIN_CHR_TYPE_SPICEPORT && !havespice) continue; + if (!(devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def, + serial->source, + serial->info.alias, + qemuCaps, true, + chardevStdioLogd))) + return -1; + virCommandAddArg(cmd, "-chardev"); + virCommandAddArg(cmd, devstr); + VIR_FREE(devstr); + /* Use -chardev with -device if they are available */ if (virQEMUCapsSupportsChardev(def, qemuCaps, serial)) { - if (!(devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def, - serial->source, - serial->info.alias, - qemuCaps, true, - chardevStdioLogd))) - return -1; - virCommandAddArg(cmd, "-chardev"); - virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); - if (qemuBuildChrDeviceCommandLine(cmd, def, serial, qemuCaps) < 0) return -1; } else { virCommandAddArg(cmd, "-serial"); - if (!(devstr = qemuBuildChrArgStr(serial->source, NULL))) - return -1; - virCommandAddArg(cmd, devstr); - VIR_FREE(devstr); + virCommandAddArgFormat(cmd, "chardev:char%s", serial->info.alias); } } diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index d669dfb32..2341f0ab1 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -1877,8 +1877,8 @@ qemuProcessMonitorReportLogError(qemuMonitorPtr mon ATTRIBUTE_UNUSED, static int -qemuProcessLookupPTYs(virDomainDefPtr def, - virQEMUCapsPtr qemuCaps, +qemuProcessLookupPTYs(virDomainDefPtr def ATTRIBUTE_UNUSED, + virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED, virDomainChrDefPtr *devices, int count, virHashTablePtr info) @@ -1887,14 +1887,11 @@ qemuProcessLookupPTYs(virDomainDefPtr def, for (i = 0; i < count; i++) { virDomainChrDefPtr chr = devices[i]; - bool chardevfmt = virQEMUCapsSupportsChardev(def, qemuCaps, chr); - if (chr->source->type == VIR_DOMAIN_CHR_TYPE_PTY) { char id[32]; qemuMonitorChardevInfoPtr entry; - if (snprintf(id, sizeof(id), "%s%s", - chardevfmt ? "char" : "", + if (snprintf(id, sizeof(id), "char%s", chr->info.alias) >= sizeof(id)) { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to format device alias " diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-kvm-32-on-64.args b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-kvm-32-on-64.args index 3af4564ad..693b48931 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-kvm-32-on-64.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-kvm-32-on-64.args @@ -26,4 +26,5 @@ server,nowait \ -device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \ -device virtio-net-device,vlan=0,id=net0,mac=52:54:00:09:a4:37 \ -net user,vlan=0,name=hostnet0 \ --serial pty +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-2.6-virtio-pci-default.args b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-2.6-virtio-pci-default.args index c640edc6f..662259e22 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-2.6-virtio-pci-default.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-2.6-virtio-pci-default.args @@ -33,7 +33,8 @@ path=/tmp/lib/domain--1-aarch64test/monitor.sock,server,nowait \ id=virtio-disk0 \ -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:09:a4:37,bus=pci.2,addr=0x1 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ -device virtconsole,chardev=charconsole1,id=console1 \ -device virtio-balloon-pci,id=balloon0,bus=pci.2,addr=0x4 \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-virtio.args b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-virtio.args index eca4c4bac..b1f7e6ea5 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-virtio.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virt-virtio.args @@ -29,7 +29,8 @@ path=/tmp/lib/domain--1-aarch64test/monitor.sock,server,nowait \ -device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \ -device virtio-net-device,vlan=0,id=net0,mac=52:54:00:09:a4:37 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ -device virtconsole,chardev=charconsole1,id=console1 \ -device virtio-balloon-device,id=balloon0 \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virtio-pci-default.args b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virtio-pci-default.args index a5bc66ecd..28ec390a1 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virtio-pci-default.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-virtio-pci-default.args @@ -37,7 +37,8 @@ addr=0x1 \ id=virtio-disk0 \ -device virtio-net-pci,vlan=0,id=net0,mac=52:54:00:09:a4:37,bus=pci.1,addr=0x0 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ -device virtconsole,chardev=charconsole1,id=console1 \ -device virtio-balloon-pci,id=balloon0,bus=pci.4,addr=0x0 \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-basic.args b/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-basic.args index 198e663d6..73d1314b5 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-basic.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-basic.args @@ -27,4 +27,5 @@ server,nowait \ -drive file=/arm.raw,format=raw,if=sd,index=0 \ -net nic,macaddr=52:54:00:09:a4:37,vlan=0,model=lan9118,name=net0 \ -net user,vlan=0,name=hostnet0 \ --serial pty +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.args b/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.args index 1402fead1..850775177 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.args @@ -29,7 +29,8 @@ server,nowait \ -device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \ -device virtio-net-device,vlan=0,id=net0,mac=52:54:00:09:a4:37 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ -device virtconsole,chardev=charconsole1,id=console1 \ -device virtio-balloon-device,id=balloon0 \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-arm-virt-virtio.args b/tests/qemuxml2argvdata/qemuxml2argv-arm-virt-virtio.args index d391a4d02..f051839dd 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-arm-virt-virtio.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-arm-virt-virtio.args @@ -27,7 +27,8 @@ server,nowait \ -device virtio-blk-device,drive=drive-virtio-disk0,id=virtio-disk0 \ -device virtio-net-device,vlan=0,id=net0,mac=52:54:00:09:a4:37 \ -net user,vlan=0,name=hostnet0 \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -chardev pty,id=charconsole1 \ -device virtconsole,chardev=charconsole1,id=console1 \ -device virtio-balloon-device,id=balloon0 \ diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args b/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args index 182744c23..2cdb45e35 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args @@ -22,5 +22,6 @@ server,nowait \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -dtb /media/ram/test.dtb \ -usb \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args b/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args index 87f4ee5e4..56b0a1c49 100644 --- a/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args +++ b/tests/qemuxml2argvdata/qemuxml2argv-ppce500-serial.args @@ -21,5 +21,6 @@ server,nowait \ -initrd /media/ram/ramdisk \ -append 'root=/dev/ram rw console=ttyS0,115200' \ -usb \ --serial pty \ +-chardev pty,id=charserial0 \ +-serial chardev:charserial0 \ -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x2 -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
@@ -1877,8 +1877,8 @@ qemuProcessMonitorReportLogError(qemuMonitorPtr mon ATTRIBUTE_UNUSED, static int -qemuProcessLookupPTYs(virDomainDefPtr def, - virQEMUCapsPtr qemuCaps, +qemuProcessLookupPTYs(virDomainDefPtr def ATTRIBUTE_UNUSED, + virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED, virDomainChrDefPtr *devices, int count, virHashTablePtr info)
I don't see a reason to turn these into ATTRIBUTE_UNUSED, just update the callers and get rid of them entirely. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

This is only used in qemu_command.c, so move it, and clarify that it's really about identifying if the serial config is a platform device or not. Signed-off-by: Cole Robinson <crobinso@redhat.com> --- src/qemu/qemu_capabilities.c | 31 ------------------------------- src/qemu/qemu_capabilities.h | 4 ---- src/qemu/qemu_command.c | 34 ++++++++++++++++++++++++++++++++-- 3 files changed, 32 insertions(+), 37 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index a20f405c2..db9f9b8b1 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5550,37 +5550,6 @@ virQEMUCapsCacheFree(virQEMUCapsCachePtr cache) bool -virQEMUCapsSupportsChardev(const virDomainDef *def, - virQEMUCapsPtr qemuCaps ATTRIBUTE_UNUSED, - virDomainChrDefPtr chr) -{ - if ((def->os.arch == VIR_ARCH_PPC) || ARCH_IS_PPC64(def->os.arch)) { - if (!qemuDomainIsPSeries(def)) - return false; - /* only pseries need -device spapr-vty with -chardev */ - if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && - chr->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) - return false; - return true; - } - - if ((def->os.arch == VIR_ARCH_ARMV7L) || - (def->os.arch == VIR_ARCH_AARCH64)) { - /* TARGET_TYPE_ISA here really means 'the default', which we - treat as whatever the built in platform serial device is on. - And for platform devices we can't use -chardev */ - if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && - chr->targetType == VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA) - return false; - - return true; - } - - return true; -} - - -bool virQEMUCapsSupportsVmport(virQEMUCapsPtr qemuCaps, const virDomainDef *def) { diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index 829cbaadb..fb22815e9 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -525,10 +525,6 @@ int virQEMUCapsGetDefaultVersion(virCapsPtr caps, VIR_ENUM_DECL(virQEMUCaps); -bool virQEMUCapsSupportsChardev(const virDomainDef *def, - virQEMUCapsPtr qemuCaps, - virDomainChrDefPtr chr); - bool virQEMUCapsSupportsGICVersion(virQEMUCapsPtr qemuCaps, virDomainVirtType virtType, virGICVersion version); diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 3e82ca086..d6fd2f2b6 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -9101,6 +9101,36 @@ qemuBuildChrDeviceCommandLine(virCommandPtr cmd, } +static bool +qemuChrIsPlatformDevice(const virDomainDef *def, + virDomainChrDefPtr chr) +{ + if ((def->os.arch == VIR_ARCH_PPC) || ARCH_IS_PPC64(def->os.arch)) { + if (!qemuDomainIsPSeries(def)) + return true; + /* only pseries need -device spapr-vty with -chardev */ + if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) + return true; + return false; + } + + if ((def->os.arch == VIR_ARCH_ARMV7L) || + (def->os.arch == VIR_ARCH_AARCH64)) { + /* TARGET_TYPE_ISA here really means 'the default', which we + treat as whatever the built in platform serial device is on. + And for platform devices we can't use -chardev */ + if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->targetType == VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA) + return true; + + return false; + } + + return false; +} + + static int qemuBuildSerialCommandLine(virLogManagerPtr logManager, virCommandPtr cmd, @@ -9136,8 +9166,8 @@ qemuBuildSerialCommandLine(virLogManagerPtr logManager, virCommandAddArg(cmd, devstr); VIR_FREE(devstr); - /* Use -chardev with -device if they are available */ - if (virQEMUCapsSupportsChardev(def, qemuCaps, serial)) { + /* If the device is not a platform device, build the devstr */ + if (!qemuChrIsPlatformDevice(def, serial)) { if (qemuBuildChrDeviceCommandLine(cmd, def, serial, qemuCaps) < 0) return -1; } else { -- 2.13.0

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
This is only used in qemu_command.c, so move it, and clarify that it's really about identifying if the serial config is a platform device or not.
You're not only moving and renaming the function, you're also entirely reversing its logic. Please mention that as well in the commit message.
+ if ((def->os.arch == VIR_ARCH_ARMV7L) || + (def->os.arch == VIR_ARCH_AARCH64)) { + /* TARGET_TYPE_ISA here really means 'the default', which we + treat as whatever the built in platform serial device is on. + And for platform devices we can't use -chardev */
This comment definitely needs to be updated now that we're using -chardev for everything, and this is the perfect time. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization

Hi Cole, On Mon, Jun 26, 2017 at 02:01:41PM -0400, Cole Robinson wrote:
Drew pointed out that we can use -chardev with machvirt platform serial devices like:
-chardev pty,id=foo -serial chardev:foo
And indeed it looks like qemu has supported this for as long as -chardev has been around. Wiring this up will enable all the modern -chardev features for every machvirt config (and some other arch/machine types).
However just enabling that change is going to cause a lot of unneeded test suite churn, due to the fact that some code is still checking for qemu -chardev support, even though our minimum qemu version always has chardev nowadays. So take the opportunity to exorcise QEMU_CAPS_CHARDEV
I tried with two mainline QEMU versions (the default old one packaged with Debian and a recent upstream commit) and this series seems to work as intended, so: Tested-by: Christoffer Dall <cdall@linaro.org>
* Patch 1 reverts Christopher's recent patch, to unbreak existing configs
Sorry about that one, I realized when I came back from holiday that my test setup was broken and I was testing using the system install of libvirt, not the deveopment one, and I happened to have created a VM with the same name in both instances, whoops. Thanks a lot for picking this up and fixing it properly. -Christoffer
* Patch 2-3 make pci-serial work for machvirt and demonstrate it with a test suite change. * Patch 4-10 slowly strip out QEMU_CAPS_DEVICE * Patch 11 adds -chardev support for platform serial devices * Patch 12 is a cleanup
Cole Robinson (12): Revert "qemu: Support chardevs with ARM virt machines" qemu: caps: Tweak arm conditional in SupportsChardev tests: qemuxml2argv: Add an aarch64 pci-serial test qemu: command: Remove old style -parallel building qemu: command: Drop some QEMU_CAPS_CHARDEV checks qemu: command: always use -chardev for monitor config tests: qemuxml2argv: drop redundant serial testing tests: qemuxml2argv: Drop old style serial testing tests: qemuxml2argv: Add some QEMU_CAPS_CHARDEV annotations qemu: caps: blacklist QEMU_CAPS_CHARDEV qemu: command: support -chardev for platform devices qemu: Rename SupportsChardev to IsPlatformDevice
src/qemu/qemu_capabilities.c | 46 +--- src/qemu/qemu_capabilities.h | 6 +- src/qemu/qemu_command.c | 243 ++++++--------------- src/qemu/qemu_process.c | 9 +- tests/qemucapabilitiesdata/caps_1.2.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.3.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.4.2.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.5.3.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_1.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.1.1.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml | 1 - .../caps_2.6.0-gicv2.aarch64.xml | 1 - .../caps_2.6.0-gicv3.aarch64.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 1 - tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 1 - tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 - tests/qemucapabilitiesdata/caps_2.9.50.s390x.xml | 1 - tests/qemuhelptest.c | 5 - .../qemuxml2argv-aarch64-aavmf-virtio-mmio.args | 4 +- .../qemuxml2argv-aarch64-acpi-uefi.args | 4 +- .../qemuxml2argv-aarch64-cpu-passthrough.args | 4 +- .../qemuxml2argv-aarch64-gic-host.args | 4 +- .../qemuxml2argv-aarch64-gic-none-tcg.args | 4 +- .../qemuxml2argv-aarch64-gic-v2.args | 4 +- .../qemuxml2argv-aarch64-gic-v3.args | 4 +- .../qemuxml2argv-aarch64-kvm-32-on-64.args | 7 +- .../qemuxml2argv-aarch64-noacpi-nouefi.args | 4 +- .../qemuxml2argv-aarch64-noacpi-uefi.args | 4 +- .../qemuxml2argv-aarch64-pci-serial.args | 26 +++ .../qemuxml2argv-aarch64-pci-serial.xml | 17 ++ ...muxml2argv-aarch64-usb-controller-nec-xhci.args | 4 +- ...uxml2argv-aarch64-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-aarch64-video-virtio-gpu-pci.args | 4 +- ...l2argv-aarch64-virt-2.6-virtio-pci-default.args | 7 +- .../qemuxml2argv-aarch64-virt-default-nic.args | 5 +- .../qemuxml2argv-aarch64-virt-virtio.args | 7 +- .../qemuxml2argv-aarch64-virtio-pci-default.args | 7 +- ...l2argv-aarch64-virtio-pci-manual-addresses.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-acpi-table.args | 4 +- .../qemuxml2argv-arm-vexpressa9-basic.args | 7 +- .../qemuxml2argv-arm-vexpressa9-nodevs.args | 4 +- .../qemuxml2argv-arm-vexpressa9-virtio.args | 7 +- .../qemuxml2argv-arm-virt-virtio.args | 7 +- tests/qemuxml2argvdata/qemuxml2argv-autoindex.args | 4 +- .../qemuxml2argv-balloon-ccw-deflate.args | 4 +- .../qemuxml2argv-balloon-device-auto.args | 4 +- .../qemuxml2argv-balloon-device-deflate-off.args | 4 +- .../qemuxml2argv-balloon-device-deflate.args | 4 +- .../qemuxml2argv-balloon-device-period.args | 4 +- .../qemuxml2argv-balloon-device.args | 4 +- .../qemuxml2argv-balloon-mmio-deflate.args | 4 +- .../qemuxml2argv-bios-nvram-secure.args | 5 +- .../qemuxml2argv-bios-nvram-secure.xml | 6 - .../qemuxml2argvdata/qemuxml2argv-bios-nvram.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-bios-nvram.xml | 6 - tests/qemuxml2argvdata/qemuxml2argv-bios.args | 7 +- .../qemuxml2argv-blkdeviotune-group-num.args | 4 +- .../qemuxml2argv-blkdeviotune-max-length.args | 4 +- .../qemuxml2argv-blkdeviotune-max.args | 4 +- .../qemuxml2argv-blkdeviotune.args | 4 +- .../qemuxml2argv-blkiotune-device.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 4 +- .../qemuxml2argv-boot-complex-bootindex.args | 4 +- .../qemuxml2argv-boot-complex.args | 4 +- .../qemuxml2argv-boot-floppy-q35.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 4 +- ...xml2argv-boot-menu-disable-drive-bootindex.args | 4 +- .../qemuxml2argv-boot-menu-disable-drive.args | 4 +- .../qemuxml2argv-boot-menu-disable.args | 4 +- .../qemuxml2argv-boot-menu-enable-bootindex.args | 4 +- ...qemuxml2argv-boot-menu-enable-with-timeout.args | 4 +- .../qemuxml2argv-boot-menu-enable.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-multi.args | 4 +- .../qemuxml2argv-boot-network.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-order.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-boot-strict.args | 4 +- .../qemuxml2argv-bootindex-floppy-q35.args | 4 +- .../qemuxml2argv-channel-spicevmc-old.args | 4 +- .../qemuxml2argv-channel-spicevmc.args | 4 +- .../qemuxml2argv-clock-catchup.args | 4 +- .../qemuxml2argv-clock-france.args | 4 +- .../qemuxml2argv-clock-hpet-off.args | 4 +- ...muxml2argv-clock-localtime-basis-localtime.args | 4 +- .../qemuxml2argv-clock-localtime.args | 4 +- .../qemuxml2argv-clock-timer-hyperv-rtc.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 4 +- .../qemuxml2argv-clock-variable.args | 4 +- .../qemuxml2argv-console-compat-auto.args | 7 +- .../qemuxml2argv-console-compat.args | 7 +- .../qemuxml2argv-cpu-Haswell-noTSX.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-Haswell.args | 4 +- .../qemuxml2argv-cpu-Haswell2.args | 4 +- .../qemuxml2argv-cpu-Haswell3.args | 4 +- .../qemuxml2argv-cpu-cache-disable.args | 4 +- .../qemuxml2argv-cpu-cache-disable2.args | 4 +- .../qemuxml2argv-cpu-cache-disable3.args | 4 +- .../qemuxml2argv-cpu-cache-emulate-l3.args | 4 +- .../qemuxml2argv-cpu-cache-passthrough.args | 4 +- .../qemuxml2argv-cpu-cache-passthrough2.args | 4 +- .../qemuxml2argv-cpu-check-default-none.args | 4 +- .../qemuxml2argv-cpu-check-default-none2.args | 4 +- .../qemuxml2argv-cpu-check-default-partial.args | 4 +- .../qemuxml2argv-cpu-check-default-partial2.args | 4 +- .../qemuxml2argv-cpu-check-none.args | 4 +- .../qemuxml2argv-cpu-eoi-disabled.args | 4 +- .../qemuxml2argv-cpu-eoi-enabled.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 4 +- .../qemuxml2argv-cpu-exact2-nofallback.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 4 +- .../qemuxml2argv-cpu-fallback.args | 4 +- .../qemuxml2argv-cpu-host-kvmclock.args | 4 +- .../qemuxml2argv-cpu-host-model-cmt.args | 4 +- .../qemuxml2argv-cpu-host-model-fallback.args | 4 +- .../qemuxml2argv-cpu-host-model-vendor.args | 4 +- .../qemuxml2argv-cpu-host-model.args | 4 +- ...qemuxml2argv-cpu-host-passthrough-features.args | 4 +- .../qemuxml2argv-cpu-host-passthrough.args | 4 +- .../qemuxml2argv-cpu-hotplug-startup.args | 4 +- .../qemuxml2argv-cpu-kvmclock.args | 4 +- .../qemuxml2argv-cpu-minimum1.args | 4 +- .../qemuxml2argv-cpu-minimum2.args | 4 +- .../qemuxml2argv-cpu-numa-disjoint.args | 4 +- .../qemuxml2argv-cpu-numa-memshared.args | 4 +- .../qemuxml2argv-cpu-numa-no-memory-element.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 4 +- .../qemuxml2argv-cpu-s390-features.args | 4 +- .../qemuxml2argv-cpu-s390-zEC12.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 4 +- .../qemuxml2argv-cpu-topology1.args | 4 +- .../qemuxml2argv-cpu-topology2.args | 4 +- .../qemuxml2argv-cpu-topology3.args | 4 +- .../qemuxml2argv-cpu-tsc-frequency.args | 4 +- .../qemuxml2argv-cputune-numatune.args | 4 +- .../qemuxml2argv-cputune-zero-shares.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 4 +- .../qemuxml2argv-debug-threads.args | 4 +- .../qemuxml2argv-default-kvm-host-arch.args | 4 +- .../qemuxml2argv-default-qemu-host-arch.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 4 +- .../qemuxml2argv-disk-blockio.args | 4 +- .../qemuxml2argv-disk-cdrom-empty.args | 4 +- .../qemuxml2argv-disk-cdrom-network-ftp.args | 4 +- .../qemuxml2argv-disk-cdrom-network-ftps.args | 4 +- .../qemuxml2argv-disk-cdrom-network-http.args | 4 +- .../qemuxml2argv-disk-cdrom-network-https.args | 4 +- .../qemuxml2argv-disk-cdrom-network-tftp.args | 4 +- ...qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 4 +- .../qemuxml2argv-disk-cdrom-tray.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 4 +- .../qemuxml2argv-disk-copy_on_read.args | 5 +- .../qemuxml2argv-disk-copy_on_read.xml | 6 - .../qemuxml2argv-disk-drive-boot-cdrom.args | 4 +- .../qemuxml2argv-disk-drive-boot-disk.args | 4 +- .../qemuxml2argv-disk-drive-cache-directsync.args | 4 +- .../qemuxml2argv-disk-drive-cache-unsafe.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-none.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-wb.args | 4 +- .../qemuxml2argv-disk-drive-cache-v2-wt.args | 4 +- .../qemuxml2argv-disk-drive-copy-on-read.args | 4 +- .../qemuxml2argv-disk-drive-detect-zeroes.args | 4 +- .../qemuxml2argv-disk-drive-discard.args | 4 +- ...uxml2argv-disk-drive-error-policy-enospace.args | 4 +- .../qemuxml2argv-disk-drive-error-policy-stop.args | 4 +- ...gv-disk-drive-error-policy-wreport-rignore.args | 4 +- .../qemuxml2argv-disk-drive-fmt-qcow.args | 4 +- .../qemuxml2argv-disk-drive-network-gluster.args | 4 +- ...qemuxml2argv-disk-drive-network-iscsi-auth.args | 4 +- .../qemuxml2argv-disk-drive-network-iscsi-lun.args | 4 +- .../qemuxml2argv-disk-drive-network-iscsi.args | 4 +- ...qemuxml2argv-disk-drive-network-nbd-export.args | 4 +- ...ml2argv-disk-drive-network-nbd-ipv6-export.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd-ipv6.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd-unix.args | 4 +- .../qemuxml2argv-disk-drive-network-nbd.args | 4 +- ...muxml2argv-disk-drive-network-rbd-auth-AES.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd-auth.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd-ipv6.args | 4 +- .../qemuxml2argv-disk-drive-network-rbd.args | 4 +- .../qemuxml2argv-disk-drive-network-sheepdog.args | 4 +- .../qemuxml2argv-disk-drive-no-boot.args | 4 +- .../qemuxml2argv-disk-drive-readonly-disk.args | 4 +- ...qemuxml2argv-disk-drive-readonly-no-device.args | 4 +- .../qemuxml2argv-disk-drive-shared.args | 4 +- ...emuxml2argv-disk-floppy-tray-no-device-cap.args | 4 +- .../qemuxml2argv-disk-floppy-tray.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 4 +- .../qemuxml2argv-disk-geometry.args | 4 +- .../qemuxml2argv-disk-ide-drive-split.args | 4 +- .../qemuxml2argv-disk-ide-wwn.args | 4 +- .../qemuxml2argv-disk-ioeventfd.args | 5 +- .../qemuxml2argv-disk-ioeventfd.xml | 6 - .../qemuxml2argvdata/qemuxml2argv-disk-iscsi.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-order.args | 4 +- .../qemuxml2argv-disk-sata-device.args | 4 +- .../qemuxml2argv-disk-scsi-device-auto.args | 4 +- .../qemuxml2argv-disk-scsi-device.args | 4 +- .../qemuxml2argv-disk-scsi-disk-split.args | 4 +- .../qemuxml2argv-disk-scsi-disk-vpd.args | 4 +- .../qemuxml2argv-disk-scsi-disk-wwn.args | 4 +- .../qemuxml2argv-disk-scsi-lun-passthrough.args | 4 +- .../qemuxml2argv-disk-scsi-megasas.args | 4 +- .../qemuxml2argv-disk-scsi-mptsas1068.args | 4 +- .../qemuxml2argv-disk-scsi-virtio-scsi.args | 4 +- .../qemuxml2argv-disk-scsi-vscsi.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-serial.args | 4 +- .../qemuxml2argv-disk-snapshot.args | 4 +- .../qemuxml2argv-disk-source-pool-mode.args | 4 +- .../qemuxml2argv-disk-source-pool.args | 4 +- .../qemuxml2argv-disk-usb-device-removable.args | 4 +- .../qemuxml2argv-disk-usb-device.args | 4 +- .../qemuxml2argv-disk-virtio-ccw-many.args | 4 +- .../qemuxml2argv-disk-virtio-ccw.args | 4 +- .../qemuxml2argv-disk-virtio-s390.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-ccw.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-cmd_per_lun.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-ioeventfd.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-max_sectors.args | 4 +- .../qemuxml2argv-disk-virtio-scsi-num_queues.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 4 +- .../qemuxml2argv-encrypted-disk-usage.args | 4 +- .../qemuxml2argv-encrypted-disk.args | 4 +- .../qemuxml2argv-eoi-disabled.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-event_idx.xml | 6 - .../qemuxml2argv-fd-memory-no-numa-topology.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology2.args | 4 +- .../qemuxml2argv-fd-memory-numa-topology3.args | 4 +- .../qemuxml2argv-fips-enabled.args | 4 +- .../qemuxml2argv-floppy-drive-fat.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-fs9p-ccw.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-fs9p.args | 4 +- .../qemuxml2argv-graphics-sdl-fullscreen.args | 4 +- .../qemuxml2argv-graphics-sdl.args | 4 +- ...emuxml2argv-graphics-spice-agent-file-xfer.args | 4 +- .../qemuxml2argv-graphics-spice-agentmouse.args | 4 +- ...emuxml2argv-graphics-spice-auto-socket-cfg.args | 4 +- .../qemuxml2argv-graphics-spice-auto-socket.args | 4 +- .../qemuxml2argv-graphics-spice-compression.args | 4 +- .../qemuxml2argv-graphics-spice-no-args.args | 4 +- .../qemuxml2argv-graphics-spice-qxl-vga.args | 4 +- .../qemuxml2argv-graphics-spice-sasl.args | 4 +- .../qemuxml2argv-graphics-spice-socket.args | 4 +- .../qemuxml2argv-graphics-spice-timeout.args | 5 +- .../qemuxml2argv-graphics-spice-timeout.xml | 6 - .../qemuxml2argv-graphics-spice.args | 4 +- .../qemuxml2argv-graphics-vnc-auto-socket-cfg.args | 4 +- .../qemuxml2argv-graphics-vnc-auto-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-no-listen-attr.args | 4 +- .../qemuxml2argv-graphics-vnc-none.args | 4 +- .../qemuxml2argv-graphics-vnc-policy.args | 4 +- ...2argv-graphics-vnc-remove-generated-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-sasl.args | 4 +- .../qemuxml2argv-graphics-vnc-socket.args | 4 +- .../qemuxml2argv-graphics-vnc-tls.args | 4 +- .../qemuxml2argv-graphics-vnc-websocket.args | 4 +- .../qemuxml2argv-graphics-vnc.args | 4 +- .../qemuxml2argv-hostdev-mdev-precreated.args | 4 +- .../qemuxml2argv-hostdev-pci-address-device.args | 4 +- .../qemuxml2argv-hostdev-pci-address.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi-iscsi-auth.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi-iscsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-lsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-readonly.args | 4 +- .../qemuxml2argv-hostdev-scsi-vhost-scsi-ccw.args | 4 +- .../qemuxml2argv-hostdev-scsi-vhost-scsi-pci.args | 4 +- ...emuxml2argv-hostdev-scsi-virtio-iscsi-auth.args | 4 +- .../qemuxml2argv-hostdev-scsi-virtio-iscsi.args | 4 +- .../qemuxml2argv-hostdev-scsi-virtio-scsi.args | 4 +- ...muxml2argv-hostdev-usb-address-device-boot.args | 4 +- .../qemuxml2argv-hostdev-usb-address-device.args | 4 +- .../qemuxml2argv-hostdev-usb-address.args | 4 +- .../qemuxml2argv-hostdev-vfio-multidomain.args | 4 +- .../qemuxml2argv-hostdev-vfio.args | 4 +- .../qemuxml2argv-hotplug-base.args | 4 +- .../qemuxml2argv-hugepages-memaccess.args | 4 +- .../qemuxml2argv-hugepages-memaccess2.args | 4 +- .../qemuxml2argv-hugepages-numa.args | 5 +- .../qemuxml2argv-hugepages-numa.xml | 6 - .../qemuxml2argv-hugepages-pages.args | 4 +- .../qemuxml2argv-hugepages-pages2.args | 5 +- .../qemuxml2argv-hugepages-pages3.args | 5 +- .../qemuxml2argv-hugepages-pages5.args | 5 +- .../qemuxml2argv-hugepages-pages6.args | 5 +- .../qemuxml2argv-hugepages-shared.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 4 +- .../qemuxml2argv-hyperv-panic.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 4 +- .../qemuxml2argv-input-usbmouse-addr.args | 4 +- .../qemuxml2argv-input-usbmouse.args | 4 +- .../qemuxml2argv-input-usbtablet.args | 4 +- .../qemuxml2argv-intel-iommu-caching-mode.args | 4 +- .../qemuxml2argv-intel-iommu-device-iotlb.args | 4 +- .../qemuxml2argv-intel-iommu-eim.args | 4 +- .../qemuxml2argv-intel-iommu-ioapic.args | 4 +- .../qemuxml2argv-intel-iommu-machine.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-intel-iommu.args | 4 +- .../qemuxml2argv-iothreads-disk-virtio-ccw.args | 4 +- .../qemuxml2argv-iothreads-disk.args | 4 +- .../qemuxml2argv-iothreads-ids-partial.args | 4 +- .../qemuxml2argv-iothreads-ids.args | 4 +- .../qemuxml2argv-iothreads-virtio-scsi-ccw.args | 4 +- .../qemuxml2argv-iothreads-virtio-scsi-pci.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-iothreads.args | 4 +- .../qemuxml2argv-kvm-features-off.args | 4 +- .../qemuxml2argv-kvm-features.args | 4 +- .../qemuxml2argv-kvm-pit-delay.args | 4 +- .../qemuxml2argv-kvm-pit-discard.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 4 +- .../qemuxml2argv-kvmclock+eoi-disabled.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-luks-disks.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-off-cap.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-off-caps.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-on-cap.args | 4 +- .../qemuxml2argv-machine-aeskeywrap-on-caps.args | 4 +- .../qemuxml2argv-machine-aliases1.args | 4 +- .../qemuxml2argv-machine-aliases2.args | 4 +- .../qemuxml2argv-machine-core-cfg-off.args | 4 +- .../qemuxml2argv-machine-core-off.args | 4 +- .../qemuxml2argv-machine-core-on.args | 4 +- .../qemuxml2argv-machine-deakeywrap-off-cap.args | 4 +- .../qemuxml2argv-machine-deakeywrap-off-caps.args | 4 +- .../qemuxml2argv-machine-deakeywrap-on-cap.args | 4 +- .../qemuxml2argv-machine-deakeywrap-on-caps.args | 4 +- .../qemuxml2argv-machine-keywrap-none-caps.args | 4 +- .../qemuxml2argv-machine-keywrap-none.args | 4 +- ...-machine-loadparm-multiple-disks-nets-s390.args | 4 +- .../qemuxml2argv-machine-loadparm-net-s390.args | 4 +- .../qemuxml2argv-machine-loadparm-s390.args | 4 +- .../qemuxml2argv-machine-smm-opt.args | 4 +- .../qemuxml2argv-machine-usb-opt.args | 4 +- .../qemuxml2argv-machine-vmport-opt.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-master-key.args | 4 +- .../qemuxml2argv-memory-hotplug-dimm-addr.args | 4 +- .../qemuxml2argv-memory-hotplug-dimm.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm-access.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm-label.args | 4 +- .../qemuxml2argv-memory-hotplug-nvdimm.args | 4 +- .../qemuxml2argv-memory-hotplug-ppc64-nonuma.args | 5 +- .../qemuxml2argv-memory-hotplug-ppc64-nonuma.xml | 6 - .../qemuxml2argv-memory-hotplug.args | 4 +- .../qemuxml2argv-memtune-unlimited.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 4 +- .../qemuxml2argv-migrate-numa-unaligned.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 4 +- .../qemuxml2argv-minimal-msg-timestamp.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 4 +- .../qemuxml2argv-misc-disable-s3.args | 4 +- .../qemuxml2argv-misc-disable-suspends.args | 4 +- .../qemuxml2argv-misc-enable-s4.args | 4 +- .../qemuxml2argv-misc-no-reboot.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 4 +- .../qemuxml2argv-mlock-unsupported.args | 4 +- .../qemuxml2argv-multifunction-pci-device.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-client.args | 4 +- .../qemuxml2argv-net-eth-hostip.args | 4 +- .../qemuxml2argv-net-eth-ifname.args | 4 +- .../qemuxml2argv-net-eth-names.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 4 +- .../qemuxml2argv-net-hostdev-multidomain.args | 4 +- .../qemuxml2argv-net-hostdev-vfio-multidomain.args | 4 +- .../qemuxml2argv-net-hostdev-vfio.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-hostdev.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-server.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-udp.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 4 +- .../qemuxml2argv-net-vhostuser-multiq.args | 4 +- .../qemuxml2argv-net-vhostuser.args | 4 +- .../qemuxml2argv-net-virtio-ccw.args | 4 +- .../qemuxml2argv-net-virtio-device.args | 4 +- .../qemuxml2argv-net-virtio-disable-offloads.args | 4 +- .../qemuxml2argv-net-virtio-netdev.args | 4 +- .../qemuxml2argv-net-virtio-rxqueuesize.args | 4 +- .../qemuxml2argv-net-virtio-s390.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-net-virtio.args | 4 +- .../qemuxml2argv-no-kvm-pit-device.args | 4 +- .../qemuxml2argv-nographics-display.args | 4 +- .../qemuxml2argv-nographics-vga.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-nographics.args | 4 +- .../qemuxml2argv-nosharepages.args | 4 +- ...qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 4 +- ...d-auto-memory-vcpu-no-cpuset-and-placement.args | 4 +- ...muxml2argv-numad-auto-vcpu-static-numatune.args | 4 +- ...qemuxml2argv-numad-static-memory-auto-vcpu.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-numad.args | 4 +- ...qemuxml2argv-numatune-auto-nodeset-invalid.args | 4 +- .../qemuxml2argv-numatune-auto-prefer.args | 4 +- .../qemuxml2argv-numatune-memnode-no-memory.args | 4 +- .../qemuxml2argv-numatune-memnode.args | 4 +- .../qemuxml2argv-numatune-memory.args | 4 +- .../qemuxml2argv-panic-double.args | 4 +- .../qemuxml2argv-panic-no-address.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-panic.args | 4 +- .../qemuxml2argv-parallel-tcp.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml | 35 --- .../qemuxml2argv-pci-autoadd-addr.args | 4 +- .../qemuxml2argv-pci-autoadd-idx.args | 4 +- .../qemuxml2argv-pci-autofill-addr.args | 4 +- .../qemuxml2argv-pci-bridge-many-disks.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-pci-bridge.args | 4 +- .../qemuxml2argv-pci-expander-bus.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pci-many.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pci-rom.args | 4 +- .../qemuxml2argv-pcie-expander-bus.args | 5 +- .../qemuxml2argv-pcie-root-port-model-generic.args | 4 +- .../qemuxml2argv-pcie-root-port-model-ioh3420.args | 4 +- .../qemuxml2argv-pcie-root-port.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args | 4 +- .../qemuxml2argv-pcie-switch-downstream-port.args | 4 +- .../qemuxml2argv-pcie-switch-upstream-port.args | 4 +- .../qemuxml2argv-pcihole64-q35.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args | 4 +- .../qemuxml2argv-pmu-feature-off.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-pmu-feature.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 7 +- .../qemuxml2argv-ppc64-usb-controller-legacy.args | 4 +- ...emuxml2argv-ppc64-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-ppc64-usb-controller.args | 4 +- .../qemuxml2argv-ppce500-serial.args | 3 +- .../qemuxml2argv-pseries-nvram.args | 4 +- .../qemuxml2argv-pv-spinlock-disabled.args | 4 +- .../qemuxml2argv-pv-spinlock-enabled.args | 4 +- .../qemuxml2argv-q35-acpi-nouefi.args | 4 +- .../qemuxml2argv-q35-acpi-uefi.args | 4 +- .../qemuxml2argv-q35-default-devices-only.args | 4 +- .../qemuxml2argv-q35-multifunction.args | 4 +- .../qemuxml2argv-q35-noacpi-nouefi.args | 4 +- .../qemuxml2argv-q35-pci-force-address.args | 4 +- .../qemuxml2argv-q35-pcie-autoadd.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35-pcie.args | 4 +- .../qemuxml2argv-q35-pm-disable-fallback.args | 4 +- .../qemuxml2argv-q35-pm-disable.args | 4 +- .../qemuxml2argv-q35-usb2-multi.args | 4 +- .../qemuxml2argv-q35-usb2-reorder.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35-usb2.args | 4 +- .../qemuxml2argv-q35-virt-manager-basic.args | 7 +- .../qemuxml2argv-q35-virtio-pci.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-q35.args | 4 +- .../qemuxml2argv-qemu-ns-commandline-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-commandline-ns1.args | 4 +- .../qemuxml2argv-qemu-ns-commandline.args | 4 +- ...emuxml2argv-qemu-ns-domain-commandline-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-domain-commandline.args | 4 +- .../qemuxml2argv-qemu-ns-domain-ns0.args | 4 +- .../qemuxml2argv-qemu-ns-no-env.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 4 +- .../qemuxml2argv-reboot-timeout-disabled.args | 4 +- .../qemuxml2argv-reboot-timeout-enabled.args | 4 +- .../qemuxml2argv-restore-v2-fd.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-restore-v2.args | 4 +- .../qemuxml2argv-seclabel-dac-none.args | 4 +- .../qemuxml2argv-seclabel-dynamic-baselabel.args | 4 +- .../qemuxml2argv-seclabel-dynamic-labelskip.args | 4 +- .../qemuxml2argv-seclabel-dynamic-override.args | 4 +- .../qemuxml2argv-seclabel-dynamic-relabel.args | 4 +- .../qemuxml2argv-seclabel-dynamic.args | 4 +- .../qemuxml2argv-seclabel-none.args | 4 +- .../qemuxml2argv-seclabel-static-labelskip.args | 4 +- .../qemuxml2argv-seclabel-static-relabel.args | 4 +- .../qemuxml2argv-seclabel-static.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-serial-dev.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml | 38 ---- .../qemuxml2argvdata/qemuxml2argv-serial-file.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-serial-file.xml | 38 ---- .../qemuxml2argvdata/qemuxml2argv-serial-many.args | 23 -- .../qemuxml2argvdata/qemuxml2argv-serial-many.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-pty.args | 4 +- .../qemuxml2argv-serial-spiceport-nospice.args | 4 +- .../qemuxml2argv-serial-tcp-telnet.args | 22 -- .../qemuxml2argv-serial-tcp-telnet.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml | 40 ---- .../qemuxml2argvdata/qemuxml2argv-serial-udp.args | 23 -- tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml | 44 ---- .../qemuxml2argvdata/qemuxml2argv-serial-unix.args | 22 -- .../qemuxml2argvdata/qemuxml2argv-serial-unix.xml | 38 ---- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 22 -- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml | 36 --- .../qemuxml2argv-shmem-plain-doorbell.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-shmem.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-smp.args | 4 +- .../qemuxml2argv-sound-device.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-sound.args | 4 +- .../qemuxml2argv-tpm-passthrough.args | 4 +- .../qemuxml2argv-usb-controller-default-q35.args | 4 +- .../qemuxml2argv-usb-controller-explicit-q35.args | 4 +- .../qemuxml2argv-usb-controller-qemu-xhci.args | 4 +- .../qemuxml2argv-vcpu-placement-static.args | 4 +- .../qemuxml2argv-video-device-pciaddr-default.args | 4 +- .../qemuxml2argv-video-qxl-device-vgamem.args | 4 +- .../qemuxml2argv-video-qxl-device.args | 4 +- .../qemuxml2argv-video-qxl-heads.args | 4 +- .../qemuxml2argv-video-qxl-nodevice.args | 4 +- .../qemuxml2argv-video-qxl-noheads.args | 4 +- .../qemuxml2argv-video-qxl-sec-device-vgamem.args | 4 +- .../qemuxml2argv-video-qxl-sec-device.args | 4 +- .../qemuxml2argv-video-vga-device-vgamem.args | 4 +- .../qemuxml2argv-video-vga-device.args | 4 +- .../qemuxml2argv-video-vga-nodevice.args | 4 +- .../qemuxml2argv-video-vga-qxl-heads.args | 4 +- .../qemuxml2argv-video-virtio-gpu-device.args | 4 +- .../qemuxml2argv-video-virtio-gpu-secondary.args | 4 +- .../qemuxml2argv-video-virtio-gpu-spice-gl.args | 4 +- .../qemuxml2argv-video-virtio-gpu-virgl.args | 4 +- .../qemuxml2argv-video-virtio-vga.args | 4 +- .../qemuxml2argv-virtio-input-passthrough.args | 4 +- .../qemuxml2argv-virtio-input.args | 4 +- .../qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 5 +- tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.xml | 6 - .../qemuxml2argv-virtio-options.args | 4 +- .../qemuxml2argv-virtio-rng-default.args | 4 +- .../qemuxml2argv-virtio-rng-egd.args | 4 +- .../qemuxml2argv-virtio-rng-multiple.args | 4 +- .../qemuxml2argv-virtio-rng-random.args | 4 +- .../qemuxml2argv-watchdog-device.args | 4 +- .../qemuxml2argv-watchdog-dump.args | 4 +- .../qemuxml2argv-watchdog-injectnmi.args | 4 +- tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 4 +- tests/qemuxml2argvtest.c | 200 ++++++++--------- .../qemuxml2xmlout-bios-nvram.xml | 6 - .../qemuxml2xmlout-disk-copy_on_read.xml | 6 - .../qemuxml2xmlout-event_idx.xml | 6 - .../qemuxml2xmlout-graphics-spice-timeout.xml | 6 - .../qemuxml2xmlout-virtio-lun.xml | 6 - tests/qemuxml2xmltest.c | 10 - 542 files changed, 1683 insertions(+), 1509 deletions(-) create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.args create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-dev.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-file.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-many.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-udp.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-unix.xml delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args delete mode 100644 tests/qemuxml2argvdata/qemuxml2argv-serial-vc.xml
-- 2.13.0

On Tue, 2017-07-04 at 11:25 +0200, Christoffer Dall wrote:
I tried with two mainline QEMU versions (the default old one packaged with Debian and a recent upstream commit) and this series seems to work as intended, so: Tested-by: Christoffer Dall <cdall@linaro.org>
Christoffer, now that the series has been merged, would you mind updating https://bugs.linaro.org/show_bug.cgi?id=2777 with the relevant information? Thanks :) -- Andrea Bolognani / Red Hat / Virtualization

Hi Andrea, On Wed, Jul 19, 2017 at 03:07:25PM +0200, Andrea Bolognani wrote:
On Tue, 2017-07-04 at 11:25 +0200, Christoffer Dall wrote:
I tried with two mainline QEMU versions (the default old one packaged with Debian and a recent upstream commit) and this series seems to work as intended, so: Tested-by: Christoffer Dall <cdall@linaro.org>
Christoffer,
now that the series has been merged, would you mind updating
https://bugs.linaro.org/show_bug.cgi?id=2777
with the relevant information?
I have updated the bug documenting that this works for me with upstream now. Which would be the next libvirt release number that contains this fix, and when is that expected to be released? I think my colleague tried to backport the changes to the libvirt version used in some Linaro packaged software, but it didn't work for him. Do you have any straight-forward thoughts on why that wouldn't work? Thanks, -Christoffer

On Thu, 2017-07-20 at 12:55 +0200, Christoffer Dall wrote:
Christoffer, now that the series has been merged, would you mind updating https://bugs.linaro.org/show_bug.cgi?id=2777 with the relevant information? I have updated the bug documenting that this works for me with upstream now.
Thanks :)
Which would be the next libvirt release number that contains this fix, and when is that expected to be released?
libvirt 3.6.0, scheduled to be released in the first week of August, will contain the fix.
I think my colleague tried to backport the changes to the libvirt version used in some Linaro packaged software, but it didn't work for him. Do you have any straight-forward thoughts on why that wouldn't work?
Can't think of anything specific, but when I backported the fixes to libvirt 3.2.0 there were quite a few conflicts to take care of, so if Linaro is using a much older libvirt version I can imagine the backport would get even trickier. -- Andrea Bolognani / Red Hat / Virtualization

On Thu, Jul 20, 2017 at 1:16 PM, Andrea Bolognani <abologna@redhat.com> wrote:
On Thu, 2017-07-20 at 12:55 +0200, Christoffer Dall wrote:
Christoffer,
now that the series has been merged, would you mind updating
https://bugs.linaro.org/show_bug.cgi?id=2777
with the relevant information?
I have updated the bug documenting that this works for me with upstream now.
Thanks :)
Which would be the next libvirt release number that contains this fix, and when is that expected to be released?
libvirt 3.6.0, scheduled to be released in the first week of August, will contain the fix.
Thanks, I'll update the ticket with this info.
I think my colleague tried to backport the changes to the libvirt version used in some Linaro packaged software, but it didn't work for him. Do you have any straight-forward thoughts on why that wouldn't work?
Can't think of anything specific, but when I backported the fixes to libvirt 3.2.0 there were quite a few conflicts to take care of, so if Linaro is using a much older libvirt version I can imagine the backport would get even trickier.
Is the 3.2.0 backport available somewhere public? Thanks, -Christoffer

On Thu, 2017-07-20 at 13:17 +0200, Christoffer Dall wrote:
Can't think of anything specific, but when I backported the fixes to libvirt 3.2.0 there were quite a few conflicts to take care of, so if Linaro is using a much older libvirt version I can imagine the backport would get even trickier. Is the 3.2.0 backport available somewhere public?
I'm afraid that's not yet the case. I see you're using 3.4.0 as your base version, so it wouldn't be of much help anyway. I took a quick peek at the git tree pointed to in the bug report and it looks like the backport was created not through cherry-picking of the relevant upstream commits, but by applying the patches straight off the mailing list. That is *not* the correct way to perform a backport, for a number or reasons: * you lose metadata such as R-b tags; * you don't have any information linking the downstream commit to the respective upstream commit, which will make it more difficult to figure out which commits can be dropped during the next rebase; * most importantly, any issue pointed out during review that has a straightforward enough fix not to warrant a respin will *still be present* in the backport. -- Andrea Bolognani / Red Hat / Virtualization

On Thu, Jul 20, 2017 at 4:27 PM, Andrea Bolognani <abologna@redhat.com> wrote:
On Thu, 2017-07-20 at 13:17 +0200, Christoffer Dall wrote:
Can't think of anything specific, but when I backported the fixes to libvirt 3.2.0 there were quite a few conflicts to take care of, so if Linaro is using a much older libvirt version I can imagine the backport would get even trickier.
Is the 3.2.0 backport available somewhere public?
I'm afraid that's not yet the case. I see you're using 3.4.0 as your base version, so it wouldn't be of much help anyway.
I took a quick peek at the git tree pointed to in the bug report and it looks like the backport was created not through cherry-picking of the relevant upstream commits, but by applying the patches straight off the mailing list.
That is *not* the correct way to perform a backport, for a number or reasons:
* you lose metadata such as R-b tags;
* you don't have any information linking the downstream commit to the respective upstream commit, which will make it more difficult to figure out which commits can be dropped during the next rebase;
* most importantly, any issue pointed out during review that has a straightforward enough fix not to warrant a respin will *still be present* in the backport.
Sure, in Riku's defense, I think the backport was done before the patches were committed upstream. But we'll give it another go. Thanks, -Christoffer

On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
Drew pointed out that we can use -chardev with machvirt platform serial devices like: -chardev pty,id=foo -serial chardev:foo And indeed it looks like qemu has supported this for as long as -chardev has been around. Wiring this up will enable all the modern -chardev features for every machvirt config (and some other arch/machine types). However just enabling that change is going to cause a lot of unneeded test suite churn, due to the fact that some code is still checking for qemu -chardev support, even though our minimum qemu version always has chardev nowadays. So take the opportunity to exorcise QEMU_CAPS_CHARDEV * Patch 1 reverts Christopher's recent patch, to unbreak existing configs * Patch 2-3 make pci-serial work for machvirt and demonstrate it with a test suite change. * Patch 4-10 slowly strip out QEMU_CAPS_DEVICE * Patch 11 adds -chardev support for platform serial devices * Patch 12 is a cleanup
Things that I forgot to mention during review: * patch 11/12 fixes [1], a fact that should be mentioned in the commit message; * you need to update the release notes as well. Thanks for taking on this! :) [1] https://bugzilla.redhat.com/show_bug.cgi?id=1435681 -- Andrea Bolognani / Red Hat / Virtualization

On 07/07/2017 12:47 PM, Andrea Bolognani wrote:
On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
Drew pointed out that we can use -chardev with machvirt platform serial devices like:
-chardev pty,id=foo -serial chardev:foo
And indeed it looks like qemu has supported this for as long as -chardev has been around. Wiring this up will enable all the modern -chardev features for every machvirt config (and some other arch/machine types).
However just enabling that change is going to cause a lot of unneeded test suite churn, due to the fact that some code is still checking for qemu -chardev support, even though our minimum qemu version always has chardev nowadays. So take the opportunity to exorcise QEMU_CAPS_CHARDEV
* Patch 1 reverts Christopher's recent patch, to unbreak existing configs * Patch 2-3 make pci-serial work for machvirt and demonstrate it with a test suite change. * Patch 4-10 slowly strip out QEMU_CAPS_DEVICE * Patch 11 adds -chardev support for platform serial devices * Patch 12 is a cleanup
Things that I forgot to mention during review:
* patch 11/12 fixes [1], a fact that should be mentioned in the commit message;
* you need to update the release notes as well.
Thanks for taking on this! :)
Thanks for the review :) I've pushed the series with (hopefully) all your comments addressed, minus the bit I mentioned in patch #10. I'll send follow up patches for news and dropping unused qemuCaps Thanks, Cole
participants (3)
-
Andrea Bolognani
-
Christoffer Dall
-
Cole Robinson