[libvirt] Update to 1.1.2 release, rebasing ARM patches
Daniel P. Berrange
berrange at fedoraproject.org
Mon Sep 2 10:49:13 UTC 2013
commit 11755d8663368001b803f11593492dd7924797cc
Author: Daniel P. Berrange <berrange at redhat.com>
Date: Mon Sep 2 11:47:36 2013 +0100
Update to 1.1.2 release, rebasing ARM patches
Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
...mu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch | 784 ++++++++++++--------
...en-fix-memory-corruption-in-legacy-driver.patch | 64 --
...fault-USB-controller-in-qemu-post-parse-c.patch | 89 ---
...-Add-default-memballoon-in-PostParse-call.patch | 81 ++
...on-t-add-default-memballoon-device-on-ARM.patch | 74 +--
...u-rename-some-functions-in-qemu_command.c.patch | 300 --------
...004-qemu-Fix-specifying-char-devs-for-ARM.patch | 31 +-
...n-t-try-to-allocate-PCI-addresses-for-ARM.patch | 15 +-
0005-qemu-Only-setup-vhost-if-virtType-kvm.patch | 31 -
...-Add-default-memballon-in-PostParse-callb.patch | 51 --
..._conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch | 35 +-
...> 0007-qemu-Fix-networking-for-ARM-guests.patch | 35 +-
...t-virtio-mmio-transport-for-virtio-on-ARM.patch | 103 ++--
libvirt.spec | 99 ++-
sources | 2 +-
15 files changed, 779 insertions(+), 1015 deletions(-)
---
diff --git a/0004-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch b/0001-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
similarity index 92%
rename from 0004-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
rename to 0001-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
index 1b7e663..68c4968 100644
--- a/0004-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
+++ b/0001-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
@@ -1,7 +1,7 @@
-From d77c4e688131be9ae811e1d650f4fdcc9fc1cee2 Mon Sep 17 00:00:00 2001
+From cc80f2dc06d46cb32a5cd6d12c6c47ddf64e72b6 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Sat, 17 Aug 2013 15:30:47 -0400
-Subject: [PATCH] qemu: Set QEMU_AUDIO_DRV=none with -nographic
+Date: Mon, 2 Sep 2013 11:23:59 +0100
+Subject: [PATCH 1/8] qemu: Set QEMU_AUDIO_DRV=none with -nographic
On my machine, a guest fails to boot if it has a sound card, but not
graphical device/display is configured, because pulseaudio fails to
@@ -12,295 +12,368 @@ isn't any option to do that, so -nographic always fails.
Set QEMU_AUDIO_DRV=none if no <graphics> are configured. Unfortunately
this has massive test suite fallout.
+
+Add a qemu.conf parameter nographics_allow_host_audio, that if enabled
+will pass through QEMU_AUDIO_DRV from sysconfig (similar to
+vnc_allow_host_audio)
---
- src/qemu/qemu_command.c | 7 ++++++-
- tests/qemuxml2argvdata/qemuxml2argv-balloon-device-auto.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-balloon-device-period.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-balloon-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-bios.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-blkdeviotune.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-blkiotune-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-boot-complex.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 3 ++-
- .../qemuxml2argv-boot-menu-disable-drive-bootindex.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-multi.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-network.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-boot-order.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-bootloader.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-channel-virtio-auto.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-channel-virtio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-clock-france.args | 4 ++--
- tests/qemuxml2argvdata/qemuxml2argv-clock-localtime.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-compat.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-sclp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-virtio-ccw.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-virtio-many.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-virtio-s390.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-console-virtio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-disabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-enabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-exact2-nofallback.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-fallback.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-host-kvmclock.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-host-model-fallback.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-host-model.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-host-passthrough.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-kvmclock.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-minimum1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-minimum2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-topology1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-topology2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cpu-topology3.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-blockio.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.args | 3 ++-
- .../qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-tray.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-directsync.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-discard.args | 2 +-
- .../qemuxml2argv-disk-drive-error-policy-enospace.args | 3 ++-
- .../qemuxml2argv-disk-drive-error-policy-stop.args | 3 ++-
- .../qemuxml2argv-disk-drive-error-policy-wreport-rignore.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fat.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-gluster.args | 3 ++-
- .../qemuxml2argv-disk-drive-network-iscsi-auth.args | 3 ++-
- .../qemuxml2argv-disk-drive-network-iscsi-lun.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-network-iscsi.args | 3 ++-
- .../qemuxml2argv-disk-drive-network-nbd-export.args | 3 ++-
- .../qemuxml2argv-disk-drive-network-nbd-ipv6-export.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-nbd-ipv6.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-nbd-unix.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-network-nbd.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-rbd-auth.args | 2 +-
- .../qemuxml2argv-disk-drive-network-rbd-ceph-env.args | 4 ++--
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-rbd-ipv6.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-network-rbd.args | 2 +-
- .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-sheepdog.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.args | 3 ++-
- .../qemuxml2argv-disk-drive-readonly-no-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.args | 3 ++-
- .../qemuxml2argv-disk-floppy-tray-no-device-cap.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-floppy-tray.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-geometry.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-ide-drive-split.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-ide-wwn.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-order.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-sata-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-device-auto.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-split.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-vpd.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-wwn.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-lun-passthrough.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-megasas.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-virtio-scsi.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-vscsi.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-usb-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-usb.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-ccw-many.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-ccw.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-s390.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-scsi-ccw.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-disk-virtio-scsi-num_queues.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-eoi-disabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-fs9p.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-sasl.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-tls.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-websocket.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-hostdev-pci-address-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-pci-address.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-boot.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-lsi.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-readonly.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-virtio-scsi.args | 3 ++-
- .../qemuxml2argv-hostdev-usb-address-device-boot.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-hostdev-usb-address-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-usb-address.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hostdev-vfio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-input-usbmouse-addr.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-input-usbmouse.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-input-usbtablet.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-kvmclock+eoi-disabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-lease.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-machine-aliases1.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-machine-aliases2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-machine-core-off.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-machine-core-on.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-machine-usb-opt.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-metadata.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-minimal-s390.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-disable-s3.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-disable-suspends.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-enable-s4.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-no-reboot.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-mlock-unsupported.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-monitor-json.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-multifunction-pci-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-client.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-eth-ifname.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-eth-names.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-hostdev-vfio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-hostdev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-server.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-virtio-ccw.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-virtio-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-virtio-s390.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-no-shutdown.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-nographics-vga.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-nographics.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-nosharepages.args | 3 ++-
- .../qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 3 ++-
- ...emuxml2argv-numad-auto-memory-vcpu-no-cpuset-and-placement.args | 3 ++-
- .../qemuxml2argv-numad-auto-vcpu-static-numatune.args | 3 ++-
- .../qemuxml2argv-numad-static-memory-auto-vcpu.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-numad.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-numatune-memory.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-parallel-parport-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-pci-autoadd-addr.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pci-autoadd-idx.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pci-bridge-many-disks.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-pci-rom.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-basic.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-nvram.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-vio-user-assigned.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-pseries-vio.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-qemu-ns-no-env.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 4 ++--
- tests/qemuxml2argvdata/qemuxml2argv-reboot-timeout-disabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-reboot-timeout-enabled.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-restore-v2-fd.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-restore-v2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-s390-piix-controllers.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-s390-usb-none.args | 2 +-
- .../qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-baselabel.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-override.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-seclabel-none.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-relabel.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-seclabel-static.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-file.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-many.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-pty.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-smartcard-controller.args | 3 ++-
- .../qemuxml2argvdata/qemuxml2argv-smartcard-host-certificates.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-smartcard-host.args | 3 ++-
- .../qemuxml2argv-smartcard-passthrough-spicevmc.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-smartcard-passthrough-tcp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-smp.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-sound-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-sound.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-tpm-passthrough.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-usb-controller.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-hub.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-ich9-companion.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-ich9-ehci-addr.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-none.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-piix3-controller.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-ports.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-redir-boot.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-redir-filter.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-usb1-usb2.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 2 +-
- tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-ccw.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-default.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-egd.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-random.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-watchdog-device.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-watchdog-dump.args | 3 ++-
- tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 3 ++-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline-ns0.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline-ns1.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain-commandline-ns0.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain-commandline.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain-ns0.args | 2 +-
- tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain.args | 2 +-
- 281 files changed, 516 insertions(+), 284 deletions(-)
+ src/qemu/libvirtd_qemu.aug | 3 +++
+ src/qemu/qemu.conf | 9 +++++++++
+ src/qemu/qemu_cgroup.c | 2 +-
+ src/qemu/qemu_command.c | 9 ++++++++-
+ src/qemu/qemu_conf.c | 1 +
+ src/qemu/qemu_conf.h | 1 +
+ src/qemu/test_libvirtd_qemu.aug.in | 1 +
+ tests/qemuxml2argvdata/qemuxml2argv-balloon-device-auto.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-balloon-device-period.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-balloon-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-bios.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-blkdeviotune.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-blkiotune-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-blkiotune.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-cdrom.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-complex-bootindex.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-complex.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-floppy.args | 3 ++-
+ .../qemuxml2argv-boot-menu-disable-drive-bootindex.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable-drive.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-menu-disable.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-menu-enable.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-multi.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-network.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-boot-order.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-bootloader.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-channel-virtio-auto.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-channel-virtio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-clock-france.args | 4 ++--
+ tests/qemuxml2argvdata/qemuxml2argv-clock-localtime.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-clock-utc.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-clock-variable.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-compat-auto.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-compat.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-sclp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-virtio-ccw.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-virtio-many.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-virtio-s390.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-console-virtio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-disabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-enabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-exact1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-exact2-nofallback.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-exact2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-fallback.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-host-kvmclock.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-host-model-fallback.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-host-model.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-host-passthrough.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-kvmclock.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-minimum1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-minimum2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-numa1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-numa2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-strict1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-topology1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-topology2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cpu-topology3.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-cputune.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-aio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-blockio.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-empty.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-ftp.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-http.args | 2 +-
+ .../qemuxml2argv-disk-cdrom-tray-no-device-cap.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-tray.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-copy_on_read.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-cdrom.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-boot-disk.args | 3 ++-
+ .../qemuxml2argv-disk-drive-cache-directsync.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-unsafe.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-none.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wb.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v1-wt.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-none.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wb.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-cache-v2-wt.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-discard.args | 2 +-
+ .../qemuxml2argv-disk-drive-error-policy-enospace.args | 3 ++-
+ .../qemuxml2argv-disk-drive-error-policy-stop.args | 3 ++-
+ .../qemuxml2argv-disk-drive-error-policy-wreport-rignore.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fat.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-fmt-qcow.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-gluster.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-iscsi-auth.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-iscsi-lun.args | 2 +-
+ .../qemuxml2argvdata/qemuxml2argv-disk-drive-network-iscsi.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-nbd-export.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-nbd-ipv6-export.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-nbd-ipv6.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-nbd-unix.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-network-nbd.args | 3 ++-
+ .../qemuxml2argv-disk-drive-network-rbd-auth.args | 2 +-
+ .../qemuxml2argv-disk-drive-network-rbd-ceph-env.args | 4 ++--
+ .../qemuxml2argv-disk-drive-network-rbd-ipv6.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-network-rbd.args | 2 +-
+ .../qemuxml2argv-disk-drive-network-sheepdog.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-no-boot.args | 2 +-
+ .../qemuxml2argvdata/qemuxml2argv-disk-drive-readonly-disk.args | 3 ++-
+ .../qemuxml2argv-disk-drive-readonly-no-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-drive-shared.args | 3 ++-
+ .../qemuxml2argv-disk-floppy-tray-no-device-cap.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-floppy-tray.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-floppy.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-geometry.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-ide-drive-split.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-ide-wwn.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-ioeventfd.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-many.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-order.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-sata-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-device-auto.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-split.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-vpd.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-disk-wwn.args | 2 +-
+ .../qemuxml2argvdata/qemuxml2argv-disk-scsi-lun-passthrough.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-megasas.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-virtio-scsi.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-vscsi.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-snapshot.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-usb-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-usb.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-ccw-many.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-ccw.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-s390.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-scsi-ccw.args | 3 ++-
+ .../qemuxml2argv-disk-virtio-scsi-num_queues.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-virtio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-disk-xenvbd.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-eoi-disabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-eoi-enabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-event_idx.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-floppy-drive-fat.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-fs9p.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-sasl.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-tls.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-graphics-vnc-websocket.args | 3 ++-
+ .../qemuxml2argv-hostdev-pci-address-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-pci-address.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-boot.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-lsi.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-scsi-readonly.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-hostdev-scsi-virtio-scsi.args | 3 ++-
+ .../qemuxml2argv-hostdev-usb-address-device-boot.args | 3 ++-
+ .../qemuxml2argv-hostdev-usb-address-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-usb-address.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hostdev-vfio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hotplug-base.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-hugepages.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hyperv-off.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-hyperv.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-input-usbmouse-addr.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-input-usbmouse.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-input-usbtablet.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-kvm.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-kvmclock+eoi-disabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-kvmclock.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-lease.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-machine-aliases1.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-machine-aliases2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-machine-core-off.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-machine-core-on.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-machine-usb-opt.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-memtune.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-metadata.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-migrate.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-minimal-s390.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-minimal.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-acpi.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-disable-s3.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-disable-suspends.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-enable-s4.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-no-reboot.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-misc-uuid.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-mlock-off.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-mlock-on.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-mlock-unsupported.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-monitor-json.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-multifunction-pci-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-client.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-eth-ifname.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-eth-names.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-eth.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-hostdev-vfio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-hostdev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-mcast.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-server.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-user.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-virtio-ccw.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-virtio-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-virtio-s390.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-net-virtio.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-no-shutdown.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-nographics-vga.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-nographics.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-nosharepages.args | 3 ++-
+ .../qemuxml2argv-numad-auto-memory-vcpu-cpuset.args | 3 ++-
+ ...uxml2argv-numad-auto-memory-vcpu-no-cpuset-and-placement.args | 3 ++-
+ .../qemuxml2argv-numad-auto-vcpu-static-numatune.args | 3 ++-
+ .../qemuxml2argv-numad-static-memory-auto-vcpu.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-numad.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-numatune-memory.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-parallel-parport-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-pci-autoadd-addr.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pci-autoadd-idx.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pci-bridge-many-disks.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-pci-rom.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pseries-basic.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pseries-nvram.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-default.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pseries-usb-multi.args | 2 +-
+ .../qemuxml2argvdata/qemuxml2argv-pseries-vio-user-assigned.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-pseries-vio.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-q35.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-qemu-ns-no-env.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-qemu-ns.args | 4 ++--
+ tests/qemuxml2argvdata/qemuxml2argv-reboot-timeout-disabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-reboot-timeout-enabled.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-restore-v1.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-restore-v2-fd.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-restore-v2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-s390-piix-controllers.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-s390-usb-none.args | 2 +-
+ .../qemuxml2argv-seclabel-dynamic-baselabel.args | 3 ++-
+ .../qemuxml2argv-seclabel-dynamic-labelskip.args | 2 +-
+ .../qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-override.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-seclabel-none.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-seclabel-static-labelskip.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-relabel.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-seclabel-static.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-dev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-file.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-many.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-pty.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-tcp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-udp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-unix.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-serial-vc.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-smartcard-controller.args | 3 ++-
+ .../qemuxml2argv-smartcard-host-certificates.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-smartcard-host.args | 3 ++-
+ .../qemuxml2argv-smartcard-passthrough-spicevmc.args | 3 ++-
+ .../qemuxml2argvdata/qemuxml2argv-smartcard-passthrough-tcp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-smbios.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-smp.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-sound-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-sound.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-tpm-passthrough.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-controller.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-hub.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-ich9-companion.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-ich9-ehci-addr.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-none.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-piix3-controller.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-ports.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-redir-boot.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-redir-filter.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb-redir.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-usb1-usb2.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-virtio-lun.args | 2 +-
+ tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-ccw.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-default.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-egd.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-virtio-rng-random.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-watchdog-device.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-watchdog-dump.args | 3 ++-
+ tests/qemuxml2argvdata/qemuxml2argv-watchdog.args | 3 ++-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline-ns0.args | 2 +-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline-ns1.args | 2 +-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-commandline.args | 2 +-
+ .../qemuxmlnsdata/qemuxmlns-qemu-ns-domain-commandline-ns0.args | 2 +-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain-commandline.args | 2 +-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain-ns0.args | 2 +-
+ tests/qemuxmlnsdata/qemuxmlns-qemu-ns-domain.args | 2 +-
+ 296 files changed, 543 insertions(+), 294 deletions(-)
+diff --git a/src/qemu/libvirtd_qemu.aug b/src/qemu/libvirtd_qemu.aug
+index 5344125..cd13d53 100644
+--- a/src/qemu/libvirtd_qemu.aug
++++ b/src/qemu/libvirtd_qemu.aug
+@@ -39,6 +39,8 @@ module Libvirtd_qemu =
+ | str_entry "spice_tls_x509_cert_dir"
+ | str_entry "spice_password"
+
++ let nogfx_entry = bool_entry "nographics_allow_host_audio"
++
+ let remote_display_entry = int_entry "remote_display_port_min"
+ | int_entry "remote_display_port_max"
+ | int_entry "remote_websocket_port_min"
+@@ -79,6 +81,7 @@ module Libvirtd_qemu =
+ (* Each entry in the config is one of the following ... *)
+ let entry = vnc_entry
+ | spice_entry
++ | nogfx_entry
+ | remote_display_entry
+ | security_entry
+ | save_entry
+diff --git a/src/qemu/qemu.conf b/src/qemu/qemu.conf
+index cdf1ec4..5fd6263 100644
+--- a/src/qemu/qemu.conf
++++ b/src/qemu/qemu.conf
+@@ -140,6 +140,15 @@
+ #spice_password = "XYZ12345"
+
+
++# By default, if no graphical front end is configured, libvirt will disable
++# QEMU audio output since directly talking to alsa/pulseaudio may not work
++# with various security settings. If you know what you're doing, enable
++# the setting below and libvirt will passthrough the QEMU_AUDIO_DRV
++# environment variable when using nographics.
++#
++#nographics_allow_host_audio = 1
++
++
+ # Override the port for creating both VNC and SPICE sessions (min).
+ # This defaults to 5900 and increases for consecutive sessions
+ # or when ports are occupied, until it hits the maximum.
+diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c
+index e27945e..cf41c33 100644
+--- a/src/qemu/qemu_cgroup.c
++++ b/src/qemu/qemu_cgroup.c
+@@ -488,7 +488,7 @@ qemuSetupDevicesCgroup(virQEMUDriverPtr driver,
+ defaultDeviceACL;
+
+ if (vm->def->nsounds &&
+- (!vm->def->ngraphics ||
++ ((!vm->def->ngraphics && cfg->nogfxAllowHostAudio) ||
+ ((vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC &&
+ cfg->vncAllowHostAudio) ||
+ (vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_SDL)))) {
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index 4345456..d968333 100644
+index f8fccea..9dfdb73 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
-@@ -7160,9 +7160,13 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -7605,9 +7605,15 @@ qemuBuildCommandLine(virConnectPtr conn,
* if you ask for nographic. So we have to make sure we override
* these defaults ourselves...
*/
@@ -308,14 +381,16 @@ index 4345456..d968333 100644
+ if (!def->graphics) {
virCommandAddArg(cmd, "-nographic");
-+ /* trying to talk directly to pulseaudio is generally problematic */
-+ virCommandAddEnvString(cmd, "QEMU_AUDIO_DRV=none");
++ if (cfg->nogfxAllowHostAudio)
++ virCommandAddEnvPass(cmd, "QEMU_AUDIO_DRV");
++ else
++ virCommandAddEnvString(cmd, "QEMU_AUDIO_DRV=none");
+ }
+
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
/* Disable global config files and default devices */
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_NO_USER_CONFIG))
-@@ -8226,6 +8230,7 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -8723,6 +8729,7 @@ qemuBuildCommandLine(virConnectPtr conn,
def->graphics[i]) < 0)
goto error;
}
@@ -323,6 +398,42 @@ index 4345456..d968333 100644
if (def->nvideos > 0) {
int primaryVideoType = def->videos[0]->type;
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VIDEO_PRIMARY) &&
+diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
+index 86ed9ed..1f57f72 100644
+--- a/src/qemu/qemu_conf.c
++++ b/src/qemu/qemu_conf.c
+@@ -338,6 +338,7 @@ int virQEMUDriverConfigLoadFile(virQEMUDriverConfigPtr cfg,
+ GET_VALUE_BOOL("vnc_sasl", cfg->vncSASL);
+ GET_VALUE_STR("vnc_sasl_dir", cfg->vncSASLdir);
+ GET_VALUE_BOOL("vnc_allow_host_audio", cfg->vncAllowHostAudio);
++ GET_VALUE_BOOL("nographics_allow_host_audio", cfg->nogfxAllowHostAudio);
+
+ p = virConfGetValue(conf, "security_driver");
+ if (p && p->type == VIR_CONF_LIST) {
+diff --git a/src/qemu/qemu_conf.h b/src/qemu/qemu_conf.h
+index 8229cfc..206f2c6 100644
+--- a/src/qemu/qemu_conf.h
++++ b/src/qemu/qemu_conf.h
+@@ -128,6 +128,7 @@ struct _virQEMUDriverConfig {
+
+ bool relaxedACS;
+ bool vncAllowHostAudio;
++ bool nogfxAllowHostAudio;
+ bool clearEmulatorCapabilities;
+ bool allowDiskFormatProbing;
+ bool setProcessName;
+diff --git a/src/qemu/test_libvirtd_qemu.aug.in b/src/qemu/test_libvirtd_qemu.aug.in
+index d4e4fae..ea770dc 100644
+--- a/src/qemu/test_libvirtd_qemu.aug.in
++++ b/src/qemu/test_libvirtd_qemu.aug.in
+@@ -15,6 +15,7 @@ module Test_libvirtd_qemu =
+ { "spice_tls" = "1" }
+ { "spice_tls_x509_cert_dir" = "/etc/pki/libvirt-spice" }
+ { "spice_password" = "XYZ12345" }
++{ "nographics_allow_host_audio" = "1" }
+ { "remote_display_port_min" = "5900" }
+ { "remote_display_port_max" = "65535" }
+ { "remote_websocket_port_min" = "5700" }
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-balloon-device-auto.args b/tests/qemuxml2argvdata/qemuxml2argv-balloon-device-auto.args
index de4877b..bca7f6b 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-balloon-device-auto.args
@@ -952,6 +1063,26 @@ index a002f89..31ffe59 100644
pc -m 214 -smp 1 -nographic -monitor unix:/tmp/test-monitor,server,nowait \
-no-acpi -boot c -usb -drive file=/dev/HostVG/QEMUGuest1,if=ide,bus=0,unit=0 -drive \
if=ide,media=cdrom,bus=1,unit=0 -net none -serial none -parallel none
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-ftp.args b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-ftp.args
+index 4fae2b0..39cdf59 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-ftp.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-ftp.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/kvm -S \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none /usr/bin/kvm -S \
+ -M pc-1.2 -m 1024 -smp 1 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -boot d -usb \
+ -drive file=ftp://host.name:21/url/path/file.iso,if=none,media=cdrom,id=drive-ide0-1-0 \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-http.args b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-http.args
+index 97f5406..2b85ba9 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-http.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-network-http.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/kvm -S \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none /usr/bin/kvm -S \
+ -M pc-1.2 -m 1024 -smp 1 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -boot d -usb \
+ -drive file=http://host.name:80/url/path/file.iso,if=none,media=cdrom,id=drive-ide0-1-0 \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-tray-no-device-cap.args b/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-tray-no-device-cap.args
index 762741c..9d7683b 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-disk-cdrom-tray-no-device-cap.args
@@ -1873,6 +2004,16 @@ index e6e42de..557b733 100644
pc -m 214 -smp 1 -nographic -nodefconfig -nodefaults -monitor \
unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb -hda \
/dev/HostVG/QEMUGuest2 -device vfio-pci,host=06:12.5,id=hostdev0,\
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-hotplug-base.args b/tests/qemuxml2argvdata/qemuxml2argv-hotplug-base.args
+index c4bd9c5..e78dff4 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-hotplug-base.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-hotplug-base.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \
+ /usr/libexec/qemu-kvm -S -M pc -m 4096 -smp 4 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait \
+ -boot c \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-hugepages.args b/tests/qemuxml2argvdata/qemuxml2argv-hugepages.args
index b327147..d42d9fc 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-hugepages.args
@@ -2549,6 +2690,36 @@ index cb360f6..c850613 100644
pc -m 214 -smp 1 -nographic -nodefconfig -nodefaults -monitor \
unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb -hda \
/dev/HostVG/QEMUGuest2 \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args b/tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args
+index 84428f9..af5734d 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-pcie-root.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/libexec/qemu-kvm \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none /usr/libexec/qemu-kvm \
+ -S -M q35 -m 2048 -smp 2 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -no-acpi -boot c \
+ -device i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x2 \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.args b/tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.args
+index 6d33b65..e10ccb1 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-pcihole64-q35.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \
+ /usr/libexec/qemu-kvm -S -M q35 -m 2048 -smp 2 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -no-acpi \
+ -boot c -global q35-pcihost.pci-hole64-size=1048576K \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args b/tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args
+index 3165139..35fbf8f 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-pcihole64.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \
+ /usr/libexec/qemu-kvm -S -M pc-1.2 -m 2048 -smp 2 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -no-acpi \
+ -boot c -global i440FX-pcihost.pci-hole64-size=1048576K -usb \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args b/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args
index 93e8f9c..fd7e994 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-ppc-dtb.args
@@ -2620,6 +2791,16 @@ index 60b31c1..f7c3af0 100644
/usr/bin/qemu-system-ppc64 \
-S -M pseries -m 512 -smp 1 -nographic -nodefconfig -nodefaults \
-chardev socket,id=charmonitor,path=/tmp/test-monitor,server,nowait \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-q35.args b/tests/qemuxml2argvdata/qemuxml2argv-q35.args
+index 9e67be5..4461eba 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-q35.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-q35.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none \
+ /usr/libexec/qemu-kvm -S -M q35 -m 2048 -smp 2 -nographic -nodefaults \
+ -monitor unix:/tmp/test-monitor,server,nowait -no-acpi -boot c \
+ -device i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x2 \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-qemu-ns-no-env.args b/tests/qemuxml2argvdata/qemuxml2argv-qemu-ns-no-env.args
index e69a3b6..7606c1a 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-qemu-ns-no-env.args
@@ -2727,6 +2908,16 @@ index f0146c7..8bef546 100644
-name QEMUGuest1 -S -M pc -m 214 -smp 1 -nographic -monitor \
unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb \
-hda /dev/HostVG/QEMUGuest1 -net none -serial \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-labelskip.args b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-labelskip.args
+index 892c6b5..74357f8 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-labelskip.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-labelskip.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none /usr/bin/qemu \
+ -name QEMUGuest1 -S -M pc -m 214 -smp 1 -nographic -monitor \
+ unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb \
+ -hda /dev/HostVG/QEMUGuest1 \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-override.args b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-override.args
index 35c3e81..397df23 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-dynamic-override.args
@@ -2760,6 +2951,16 @@ index f0146c7..8bef546 100644
-name QEMUGuest1 -S -M pc -m 214 -smp 1 -nographic -monitor \
unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb \
-hda /dev/HostVG/QEMUGuest1 -net none -serial \
+diff --git a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-labelskip.args b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-labelskip.args
+index 892c6b5..74357f8 100644
+--- a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-labelskip.args
++++ b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-labelskip.args
+@@ -1,4 +1,4 @@
+-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu \
++LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test QEMU_AUDIO_DRV=none /usr/bin/qemu \
+ -name QEMUGuest1 -S -M pc -m 214 -smp 1 -nographic -monitor \
+ unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb \
+ -hda /dev/HostVG/QEMUGuest1 \
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-relabel.args b/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-relabel.args
index f4a5c6d..dc5bc2b 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-seclabel-static-relabel.args
@@ -3367,3 +3568,6 @@ index 29cf9c3..26038a0 100644
/usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -monitor \
unix:/tmp/test-monitor,server,nowait -no-acpi -boot c -usb -hda \
/dev/HostVG/QEMUGuest1 -net none -serial none -parallel none
+--
+1.8.3.1
+
diff --git a/0002-domain_conf-Add-default-memballoon-in-PostParse-call.patch b/0002-domain_conf-Add-default-memballoon-in-PostParse-call.patch
new file mode 100644
index 0000000..8d5a98c
--- /dev/null
+++ b/0002-domain_conf-Add-default-memballoon-in-PostParse-call.patch
@@ -0,0 +1,81 @@
+From 79c38961565eb2d352f101cbd6806314894614cb Mon Sep 17 00:00:00 2001
+From: Cole Robinson <crobinso at redhat.com>
+Date: Fri, 30 Aug 2013 12:41:30 -0400
+Subject: [PATCH 2/8] domain_conf: Add default memballoon in PostParse
+ callbacks
+
+This should be a no-op change for now.
+---
+ src/conf/domain_conf.c | 13 -------------
+ src/qemu/qemu_domain.c | 10 ++++++++++
+ src/xen/xen_driver.c | 9 +++++++++
+ 3 files changed, 19 insertions(+), 13 deletions(-)
+
+diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
+index f8fbf79..fafbb89 100644
+--- a/src/conf/domain_conf.c
++++ b/src/conf/domain_conf.c
+@@ -12184,19 +12184,6 @@ virDomainDefParseXML(xmlDocPtr xml,
+
+ def->memballoon = memballoon;
+ VIR_FREE(nodes);
+- } else {
+- if (def->virtType == VIR_DOMAIN_VIRT_XEN ||
+- def->virtType == VIR_DOMAIN_VIRT_QEMU ||
+- def->virtType == VIR_DOMAIN_VIRT_KQEMU ||
+- def->virtType == VIR_DOMAIN_VIRT_KVM) {
+- virDomainMemballoonDefPtr memballoon;
+- if (VIR_ALLOC(memballoon) < 0)
+- goto error;
+- memballoon->model = def->virtType == VIR_DOMAIN_VIRT_XEN ?
+- VIR_DOMAIN_MEMBALLOON_MODEL_XEN :
+- VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO;
+- def->memballoon = memballoon;
+- }
+ }
+
+ /* Parse the RNG device */
+diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
+index 7f4d17d..9260301 100644
+--- a/src/qemu/qemu_domain.c
++++ b/src/qemu/qemu_domain.c
+@@ -784,6 +784,16 @@ qemuDomainDefPostParse(virDomainDefPtr def,
+ return -1;
+ }
+ }
++
++ if (!def->memballoon) {
++ virDomainMemballoonDefPtr memballoon;
++ if (VIR_ALLOC(memballoon) < 0)
++ return -1;
++
++ memballoon->model = VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO;
++ def->memballoon = memballoon;
++ }
++
+ return 0;
+ }
+
+diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
+index cb64de6..6cb4f4f 100644
+--- a/src/xen/xen_driver.c
++++ b/src/xen/xen_driver.c
+@@ -340,6 +340,15 @@ xenDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
+ STRNEQ(def->os.type, "hvm"))
+ dev->data.chr->targetType = VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_XEN;
+
++ if (!def->memballoon) {
++ virDomainMemballoonDefPtr memballoon;
++ if (VIR_ALLOC(memballoon) < 0)
++ return -1;
++
++ memballoon->model = VIR_DOMAIN_MEMBALLOON_MODEL_XEN;
++ def->memballoon = memballoon;
++ }
++
+ return 0;
+ }
+
+--
+1.8.3.1
+
diff --git a/0007-qemu-Don-t-add-default-memballoon-device-on-ARM.patch b/0003-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
similarity index 74%
rename from 0007-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
rename to 0003-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
index 8e4a481..f41c9ee 100644
--- a/0007-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
+++ b/0003-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
@@ -1,26 +1,25 @@
-From 56aa5100965134dcc9773dcb47c2cf88b26717f9 Mon Sep 17 00:00:00 2001
+From 5ed47b89c6cb59c9ec5169bcc99a67e9a75fb2af Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Tue, 30 Jul 2013 15:41:14 -0400
-Subject: [PATCH] qemu: Don't add default memballoon device on ARM
+Date: Fri, 30 Aug 2013 12:41:31 -0400
+Subject: [PATCH 3/8] qemu: Don't add default memballoon device on ARM
And add test cases for a basic working ARM guest.
---
docs/schemas/domaincommon.rng | 19 +++++++++++++
- src/conf/domain_conf.c | 14 ---------
src/qemu/qemu_domain.c | 4 ++-
.../qemuxml2argv-arm-vexpressa9-nodevs.args | 5 ++++
.../qemuxml2argv-arm-vexpressa9-nodevs.xml | 26 +++++++++++++++++
tests/qemuxml2argvtest.c | 3 ++
tests/testutilsqemu.c | 33 ++++++++++++++++++++++
- 7 files changed, 89 insertions(+), 15 deletions(-)
+ 6 files changed, 89 insertions(+), 1 deletion(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-nodevs.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-nodevs.xml
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
-index 745b959..781ecfd 100644
+index 6978dc7..68c3e4d 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
-@@ -303,6 +303,7 @@
+@@ -304,6 +304,7 @@
<ref name="hvmppc"/>
<ref name="hvmppc64"/>
<ref name="hvms390"/>
@@ -28,7 +27,7 @@ index 745b959..781ecfd 100644
</choice>
</optional>
<value>hvm</value>
-@@ -412,6 +413,24 @@
+@@ -413,6 +414,24 @@
</optional>
</group>
</define>
@@ -53,51 +52,19 @@ index 745b959..781ecfd 100644
<define name="osexe">
<element name="os">
<element name="type">
-diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
-index 18c6acf..8ede44d 100644
---- a/src/conf/domain_conf.c
-+++ b/src/conf/domain_conf.c
-@@ -8801,7 +8801,6 @@ virDomainVideoDefaultRAM(virDomainDefPtr def,
- }
- }
-
--
- int
- virDomainVideoDefaultType(virDomainDefPtr def)
- {
-@@ -12136,19 +12135,6 @@ virDomainDefParseXML(xmlDocPtr xml,
-
- def->memballoon = memballoon;
- VIR_FREE(nodes);
-- } else {
-- if (def->virtType == VIR_DOMAIN_VIRT_XEN ||
-- def->virtType == VIR_DOMAIN_VIRT_QEMU ||
-- def->virtType == VIR_DOMAIN_VIRT_KQEMU ||
-- def->virtType == VIR_DOMAIN_VIRT_KVM) {
-- virDomainMemballoonDefPtr memballoon;
-- if (VIR_ALLOC(memballoon) < 0)
-- goto error;
-- memballoon->model = def->virtType == VIR_DOMAIN_VIRT_XEN ?
-- VIR_DOMAIN_MEMBALLOON_MODEL_XEN :
-- VIR_DOMAIN_MEMBALLOON_MODEL_VIRTIO;
-- def->memballoon = memballoon;
-- }
- }
-
- /* Parse the RNG device */
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
-index dc7ab3e..36df403 100644
+index 9260301..cff6d70 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
-@@ -701,6 +701,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
- {
- bool addDefaultUSB = true;
+@@ -703,6 +703,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
+ bool addImplicitSATA = false;
bool addPCIRoot = false;
+ bool addPCIeRoot = false;
+ bool addDefaultMemballoon = true;
/* check for emulator and create a default one if needed */
if (!def->emulator &&
-@@ -730,6 +731,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
+@@ -737,6 +738,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
case VIR_ARCH_ARMV7L:
addDefaultUSB = false;
@@ -105,9 +72,9 @@ index dc7ab3e..36df403 100644
break;
case VIR_ARCH_ALPHA:
-@@ -755,7 +757,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
- VIR_DOMAIN_CONTROLLER_MODEL_PCI_ROOT) < 0)
- return -1;
+@@ -785,7 +787,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
+ }
+ }
- if (!def->memballoon) {
+ if (addDefaultMemballoon && !def->memballoon) {
@@ -158,12 +125,12 @@ index 0000000..3f318c8
+ </devices>
+</domain>
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
-index b7485fc..361ddb8 100644
+index 4e3508b..cb6106f 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
-@@ -1027,6 +1027,9 @@ mymain(void)
- DO_TEST_PARSE_ERROR("pci-root-address",
- QEMU_CAPS_DEVICE, QEMU_CAPS_DEVICE_PCI_BRIDGE);
+@@ -1057,6 +1057,9 @@ mymain(void)
+ QEMU_CAPS_VGA_QXL, QEMU_CAPS_DEVICE_QXL,
+ QEMU_CAPS_Q35_PCI_HOLE64_SIZE);
+ DO_TEST("arm-vexpressa9-nodevs",
+ QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DTB);
@@ -222,3 +189,6 @@ index fac83b2..92433ef 100644
if (virTestGetDebug()) {
char *caps_str;
+--
+1.8.3.1
+
diff --git a/0008-qemu-Fix-adding-specifying-char-devs-for-ARM.patch b/0004-qemu-Fix-specifying-char-devs-for-ARM.patch
similarity index 88%
rename from 0008-qemu-Fix-adding-specifying-char-devs-for-ARM.patch
rename to 0004-qemu-Fix-specifying-char-devs-for-ARM.patch
index 7f0c721..cd9c4e9 100644
--- a/0008-qemu-Fix-adding-specifying-char-devs-for-ARM.patch
+++ b/0004-qemu-Fix-specifying-char-devs-for-ARM.patch
@@ -1,7 +1,7 @@
-From 2797780706ba62cff67540be18e59d0fd6438389 Mon Sep 17 00:00:00 2001
+From 20f2f4c07d8e8d4373094473114ae16909fe4005 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Tue, 30 Jul 2013 17:49:11 -0400
-Subject: [PATCH] qemu: Fix adding specifying char devs for ARM
+Date: Fri, 30 Aug 2013 12:41:32 -0400
+Subject: [PATCH 4/8] qemu: Fix specifying char devs for ARM
QEMU ARM boards don't give us any way to explicitly wire in
a -chardev, so use the old style -serial options.
@@ -16,10 +16,10 @@ for qemu-system-arm, as upcoming virtio support _will_ use device/chardev.
4 files changed, 45 insertions(+), 17 deletions(-)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
-index 08406b8..5c8316f 100644
+index 7888e2d..72df793 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
-@@ -2810,3 +2810,21 @@ virQEMUCapsUsedQMP(virQEMUCapsPtr qemuCaps)
+@@ -2827,3 +2827,21 @@ virQEMUCapsUsedQMP(virQEMUCapsPtr qemuCaps)
{
return qemuCaps->usedQMP;
}
@@ -42,10 +42,10 @@ index 08406b8..5c8316f 100644
+ return true;
+}
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
-index f5f685d..56f8405 100644
+index 69f3395..5180ee9 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
-@@ -272,4 +272,8 @@ int virQEMUCapsParseDeviceStr(virQEMUCapsPtr qemuCaps, const char *str);
+@@ -275,4 +275,8 @@ int virQEMUCapsParseDeviceStr(virQEMUCapsPtr qemuCaps, const char *str);
VIR_ENUM_DECL(virQEMUCaps);
bool virQEMUCapsUsedQMP(virQEMUCapsPtr qemuCaps);
@@ -55,10 +55,10 @@ index f5f685d..56f8405 100644
+
#endif /* __QEMU_CAPABILITIES_H__*/
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index 6710bf0..e6000d9 100644
+index 9dfdb73..a8e532c 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
-@@ -7996,8 +7996,7 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -8493,8 +8493,7 @@ qemuBuildCommandLine(virConnectPtr conn,
char *devstr;
/* Use -chardev with -device if they are available */
@@ -69,10 +69,10 @@ index 6710bf0..e6000d9 100644
if (!(devstr = qemuBuildChrChardevStr(&serial->source,
serial->info.alias,
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
-index d631a6f..57036e8 100644
+index dfe8142..abe0060 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
-@@ -1583,22 +1583,25 @@ qemuProcessExtractTTYPath(const char *haystack,
+@@ -1604,22 +1604,25 @@ qemuProcessExtractTTYPath(const char *haystack,
}
static int
@@ -103,7 +103,7 @@ index d631a6f..57036e8 100644
return -1;
path = (const char *) virHashLookup(paths, id);
-@@ -1632,19 +1635,21 @@ qemuProcessFindCharDevicePTYsMonitor(virDomainObjPtr vm,
+@@ -1653,19 +1656,21 @@ qemuProcessFindCharDevicePTYsMonitor(virDomainObjPtr vm,
virQEMUCapsPtr qemuCaps,
virHashTablePtr paths)
{
@@ -132,7 +132,7 @@ index d631a6f..57036e8 100644
return -1;
/* For historical reasons, console[0] can be just an alias
* for serial[0]. That's why we need to update it as well. */
-@@ -1662,8 +1667,9 @@ qemuProcessFindCharDevicePTYsMonitor(virDomainObjPtr vm,
+@@ -1683,8 +1688,9 @@ qemuProcessFindCharDevicePTYsMonitor(virDomainObjPtr vm,
}
}
@@ -144,7 +144,7 @@ index d631a6f..57036e8 100644
return -1;
return 0;
-@@ -1753,7 +1759,8 @@ qemuProcessWaitForMonitor(virQEMUDriverPtr driver,
+@@ -1774,7 +1780,8 @@ qemuProcessWaitForMonitor(virQEMUDriverPtr driver,
virHashTablePtr paths = NULL;
qemuDomainObjPrivatePtr priv;
@@ -154,3 +154,6 @@ index d631a6f..57036e8 100644
if ((logfd = qemuDomainOpenLog(driver, vm, pos)) < 0)
return -1;
+--
+1.8.3.1
+
diff --git a/0009-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch b/0005-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
similarity index 75%
rename from 0009-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
rename to 0005-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
index 5896a85..69ab3fa 100644
--- a/0009-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
+++ b/0005-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
@@ -1,17 +1,17 @@
-From d859b21108e4d45a7851c2be0a61895da66159a2 Mon Sep 17 00:00:00 2001
+From 5772cbdfb807842685d05665f285745ca79acc89 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Tue, 30 Jul 2013 18:56:15 -0400
-Subject: [PATCH] qemu: Don't try to allocate PCI addresses for ARM
+Date: Fri, 30 Aug 2013 12:41:33 -0400
+Subject: [PATCH 5/8] qemu: Don't try to allocate PCI addresses for ARM
---
src/qemu/qemu_command.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index e6000d9..66b02fc 100644
+index a8e532c..87345c7 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
-@@ -1694,6 +1694,16 @@ cleanup:
+@@ -1773,6 +1773,16 @@ cleanup:
return ret;
}
@@ -28,7 +28,7 @@ index e6000d9..66b02fc 100644
int
qemuDomainAssignPCIAddresses(virDomainDefPtr def,
-@@ -1760,8 +1770,10 @@ qemuDomainAssignPCIAddresses(virDomainDefPtr def,
+@@ -1838,8 +1848,10 @@ qemuDomainAssignPCIAddresses(virDomainDefPtr def,
if (!(addrs = qemuDomainPCIAddressSetCreate(def, nbuses, false)))
goto cleanup;
@@ -41,3 +41,6 @@ index e6000d9..66b02fc 100644
}
if (obj && obj->privateData) {
+--
+1.8.3.1
+
diff --git a/0010-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch b/0006-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
similarity index 87%
rename from 0010-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
rename to 0006-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
index b44e5b7..9a1703a 100644
--- a/0010-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
+++ b/0006-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
@@ -1,7 +1,7 @@
-From a0d15c46d153d5574f68e18ea2f027cdb98e9390 Mon Sep 17 00:00:00 2001
+From 019eccdb20e824aabb12da3699664ba2625ef4b4 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Wed, 31 Jul 2013 09:00:26 -0400
-Subject: [PATCH] domain_conf: Add disk bus=sd, wire it up for qemu
+Date: Fri, 30 Aug 2013 12:41:34 -0400
+Subject: [PATCH 6/8] domain_conf: Add disk bus=sd, wire it up for qemu
This corresponds to '-sd' and '-drive if=sd' on the qemu command line.
Needed for many ARM boards which don't provide any other way to
@@ -15,10 +15,10 @@ pass in storage.
5 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
-index 78e132e..1314806 100644
+index cce179d..af9b4ae 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
-@@ -1660,7 +1660,8 @@
+@@ -1785,7 +1785,8 @@
as a device ordering hint. The optional <code>bus</code>
attribute specifies the type of disk device to emulate;
possible values are driver specific, with typical values being
@@ -29,10 +29,10 @@ index 78e132e..1314806 100644
'sda' will typically be exported using a SCSI bus). The optional
attribute <code>tray</code> indicates the tray status of the
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
-index 781ecfd..4f4564b 100644
+index 68c3e4d..79ea746 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
-@@ -1286,6 +1286,7 @@
+@@ -1295,6 +1295,7 @@
<value>usb</value>
<value>uml</value>
<value>sata</value>
@@ -41,7 +41,7 @@ index 781ecfd..4f4564b 100644
</attribute>
</optional>
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
-index 8ede44d..5485d86 100644
+index fafbb89..2c62a2d 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -239,7 +239,8 @@ VIR_ENUM_IMPL(virDomainDiskBus, VIR_DOMAIN_DISK_BUS_LAST,
@@ -54,7 +54,7 @@ index 8ede44d..5485d86 100644
VIR_ENUM_IMPL(virDomainDiskCache, VIR_DOMAIN_DISK_CACHE_LAST,
"default",
-@@ -17227,6 +17228,7 @@ virDiskNameToBusDeviceIndex(const virDomainDiskDefPtr disk,
+@@ -17308,6 +17309,7 @@ virDiskNameToBusDeviceIndex(const virDomainDiskDefPtr disk,
case VIR_DOMAIN_DISK_BUS_USB:
case VIR_DOMAIN_DISK_BUS_VIRTIO:
case VIR_DOMAIN_DISK_BUS_XEN:
@@ -63,10 +63,10 @@ index 8ede44d..5485d86 100644
*busIdx = 0;
*devIdx = idx;
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
-index abf024c..cf075e1 100644
+index 56739b7..380e2bb 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
-@@ -508,6 +508,7 @@ enum virDomainDiskBus {
+@@ -509,6 +509,7 @@ enum virDomainDiskBus {
VIR_DOMAIN_DISK_BUS_USB,
VIR_DOMAIN_DISK_BUS_UML,
VIR_DOMAIN_DISK_BUS_SATA,
@@ -75,7 +75,7 @@ index abf024c..cf075e1 100644
VIR_DOMAIN_DISK_BUS_LAST
};
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index 66b02fc..d4ab1a6 100644
+index 87345c7..6733709 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -73,7 +73,8 @@ VIR_ENUM_IMPL(virDomainDiskQEMUBus, VIR_DOMAIN_DISK_BUS_LAST,
@@ -98,7 +98,7 @@ index 66b02fc..d4ab1a6 100644
default:
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("Unsupported disk name mapping for bus '%s'"),
-@@ -3406,7 +3410,9 @@ qemuBuildDriveStr(virConnectPtr conn ATTRIBUTE_UNUSED,
+@@ -3786,7 +3790,9 @@ qemuBuildDriveStr(virConnectPtr conn ATTRIBUTE_UNUSED,
break;
case VIR_DOMAIN_DISK_BUS_XEN:
@@ -109,7 +109,7 @@ index 66b02fc..d4ab1a6 100644
break;
}
-@@ -7693,12 +7699,13 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -8190,12 +8196,13 @@ qemuBuildCommandLine(virConnectPtr conn,
virCommandAddArg(cmd, "-drive");
/* Unfortunately it is not possible to use
@@ -125,7 +125,7 @@ index 66b02fc..d4ab1a6 100644
withDeviceArg = true;
} else {
virQEMUCapsClear(qemuCaps, QEMU_CAPS_DEVICE);
-@@ -9383,6 +9390,8 @@ qemuParseCommandLineDisk(virDomainXMLOptionPtr xmlopt,
+@@ -9892,6 +9899,8 @@ qemuParseCommandLineDisk(virDomainXMLOptionPtr xmlopt,
def->bus = VIR_DOMAIN_DISK_BUS_VIRTIO;
else if (STREQ(values[i], "xen"))
def->bus = VIR_DOMAIN_DISK_BUS_XEN;
@@ -134,7 +134,7 @@ index 66b02fc..d4ab1a6 100644
} else if (STREQ(keywords[i], "media")) {
if (STREQ(values[i], "cdrom")) {
def->device = VIR_DOMAIN_DISK_DEVICE_CDROM;
-@@ -9532,7 +9541,8 @@ qemuParseCommandLineDisk(virDomainXMLOptionPtr xmlopt,
+@@ -10041,7 +10050,8 @@ qemuParseCommandLineDisk(virDomainXMLOptionPtr xmlopt,
if (def->bus == VIR_DOMAIN_DISK_BUS_IDE) {
ignore_value(VIR_STRDUP(def->dst, "hda"));
@@ -144,3 +144,6 @@ index 66b02fc..d4ab1a6 100644
ignore_value(VIR_STRDUP(def->dst, "sda"));
} else if (def->bus == VIR_DOMAIN_DISK_BUS_VIRTIO) {
ignore_value(VIR_STRDUP(def->dst, "vda"));
+--
+1.8.3.1
+
diff --git a/0011-qemu-Fix-networking-for-ARM-guests.patch b/0007-qemu-Fix-networking-for-ARM-guests.patch
similarity index 89%
rename from 0011-qemu-Fix-networking-for-ARM-guests.patch
rename to 0007-qemu-Fix-networking-for-ARM-guests.patch
index 227f1f6..197ea92 100644
--- a/0011-qemu-Fix-networking-for-ARM-guests.patch
+++ b/0007-qemu-Fix-networking-for-ARM-guests.patch
@@ -1,7 +1,7 @@
-From 2661a048446d64fa0e4f6516ca7295e6087b5ec7 Mon Sep 17 00:00:00 2001
+From 7a73b81f1021c76d02fe54f927cd033fe949590f Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Tue, 30 Jul 2013 18:51:30 -0400
-Subject: [PATCH] qemu: Fix networking for ARM guests
+Date: Fri, 30 Aug 2013 12:41:35 -0400
+Subject: [PATCH 7/8] qemu: Fix networking for ARM guests
Similar to the chardev bit, ARM boards depend on the old style '-net nic'
for actually instantiating net devices. But we can't block out
@@ -19,7 +19,7 @@ And add tests for working ARM XML with console, disk, and networking.
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-basic.xml
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index d4ab1a6..1d57ccc 100644
+index 6733709..787381b 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -417,6 +417,26 @@ cleanup:
@@ -59,7 +59,7 @@ index d4ab1a6..1d57ccc 100644
if (net->driver.virtio.name == VIR_DOMAIN_NET_BACKEND_TYPE_VHOST) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
"%s", _("vhost-net is not supported with "
-@@ -6872,8 +6891,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+@@ -7312,8 +7331,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
*
* NB, no support for -netdev without use of -device
*/
@@ -69,16 +69,16 @@ index d4ab1a6..1d57ccc 100644
if (!(host = qemuBuildHostNetStr(net, driver,
',', vlan,
tapfdName, tapfdSize,
-@@ -6881,7 +6899,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+@@ -7321,7 +7339,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
goto cleanup;
virCommandAddArgList(cmd, "-netdev", host, NULL);
}
- if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE)) {
+ if (qemuDomainSupportsNicdev(def, qemuCaps)) {
- if (!(nic = qemuBuildNicDevStr(net, vlan, bootindex, qemuCaps)))
- goto cleanup;
- virCommandAddArgList(cmd, "-device", nic, NULL);
-@@ -6890,8 +6908,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+ bool multiqueue = tapfdSize > 1 || vhostfdSize > 1;
+
+ if (!(nic = qemuBuildNicDevStr(def, net, vlan, bootindex,
+@@ -7333,8 +7351,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
goto cleanup;
virCommandAddArgList(cmd, "-net", nic, NULL);
}
@@ -88,7 +88,7 @@ index d4ab1a6..1d57ccc 100644
if (!(host = qemuBuildHostNetStr(net, driver,
',', vlan,
tapfdName, tapfdSize,
-@@ -7888,8 +7905,7 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -8385,8 +8402,7 @@ qemuBuildCommandLine(virConnectPtr conn,
int vlan;
/* VLANs are not used with -netdev, so don't record them */
@@ -99,10 +99,10 @@ index d4ab1a6..1d57ccc 100644
else
vlan = i;
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
-index 36df403..0b3503a 100644
+index cff6d70..30588fb 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
-@@ -769,6 +769,23 @@ qemuDomainDefPostParse(virDomainDefPtr def,
+@@ -799,6 +799,23 @@ qemuDomainDefPostParse(virDomainDefPtr def,
return 0;
}
@@ -126,7 +126,7 @@ index 36df403..0b3503a 100644
static int
qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
-@@ -784,8 +801,7 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
+@@ -814,8 +831,7 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
dev->data.net->type != VIR_DOMAIN_NET_TYPE_HOSTDEV &&
!dev->data.net->model) {
if (VIR_STRDUP(dev->data.net->model,
@@ -191,10 +191,10 @@ index 0000000..ec9374f
+ </devices>
+</domain>
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
-index 361ddb8..0bf2724 100644
+index cb6106f..6ecabbf 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
-@@ -1029,6 +1029,9 @@ mymain(void)
+@@ -1059,6 +1059,9 @@ mymain(void)
DO_TEST("arm-vexpressa9-nodevs",
QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DTB);
@@ -204,3 +204,6 @@ index 361ddb8..0bf2724 100644
virObjectUnref(driver.config);
virObjectUnref(driver.caps);
+--
+1.8.3.1
+
diff --git a/0012-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch b/0008-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
similarity index 85%
rename from 0012-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
rename to 0008-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
index f2f813d..d113b25 100644
--- a/0012-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
+++ b/0008-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
@@ -1,7 +1,7 @@
-From cd745209fc0b4a433ae7127bab616373e91a8a22 Mon Sep 17 00:00:00 2001
+From 1ec41110747764f89f522e9e010326944da8d96d Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso at redhat.com>
-Date: Wed, 31 Jul 2013 21:40:35 -0400
-Subject: [PATCH] qemu: Support virtio-mmio transport for virtio on ARM
+Date: Fri, 30 Aug 2013 12:41:36 -0400
+Subject: [PATCH 8/8] qemu: Support virtio-mmio transport for virtio on ARM
Starting with qemu 1.6, the qemu-system-arm vexpress-a9 model has a
hardcoded virtio-mmio transport which enables attaching all virtio
@@ -21,18 +21,18 @@ enabled.
---
src/conf/domain_conf.c | 12 +++-
src/conf/domain_conf.h | 1 +
- src/qemu/qemu_capabilities.c | 16 ++++--
- src/qemu/qemu_capabilities.h | 1 +
+ src/qemu/qemu_capabilities.c | 17 ++++--
+ src/qemu/qemu_capabilities.h | 2 +
src/qemu/qemu_command.c | 65 +++++++++++++++++-----
.../qemuxml2argv-arm-vexpressa9-virtio.args | 14 +++++
.../qemuxml2argv-arm-vexpressa9-virtio.xml | 45 +++++++++++++++
tests/qemuxml2argvtest.c | 4 ++
- 8 files changed, 137 insertions(+), 21 deletions(-)
+ 8 files changed, 139 insertions(+), 21 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-arm-vexpressa9-virtio.xml
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
-index 5485d86..73e5af4 100644
+index 2c62a2d..3b51ae8 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -210,7 +210,8 @@ VIR_ENUM_IMPL(virDomainDeviceAddress, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_LAST,
@@ -45,7 +45,7 @@ index 5485d86..73e5af4 100644
VIR_ENUM_IMPL(virDomainDisk, VIR_DOMAIN_DISK_TYPE_LAST,
"block",
-@@ -2386,6 +2387,7 @@ int virDomainDeviceAddressIsValid(virDomainDeviceInfoPtr info,
+@@ -2390,6 +2391,7 @@ int virDomainDeviceAddressIsValid(virDomainDeviceInfoPtr info,
return 1;
case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390:
@@ -53,7 +53,7 @@ index 5485d86..73e5af4 100644
return 1;
case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW:
-@@ -3027,6 +3029,9 @@ virDomainDeviceInfoFormat(virBufferPtr buf,
+@@ -3031,6 +3033,9 @@ virDomainDeviceInfoFormat(virBufferPtr buf,
info->addr.ccw.devno);
break;
@@ -63,7 +63,7 @@ index 5485d86..73e5af4 100644
default:
virReportError(VIR_ERR_INTERNAL_ERROR,
_("unknown address type '%d'"), info->type);
-@@ -3491,6 +3496,9 @@ virDomainDeviceInfoParseXML(xmlNodePtr node,
+@@ -3495,6 +3500,9 @@ virDomainDeviceInfoParseXML(xmlNodePtr node,
goto cleanup;
break;
@@ -73,7 +73,7 @@ index 5485d86..73e5af4 100644
default:
/* Should not happen */
virReportError(VIR_ERR_INTERNAL_ERROR,
-@@ -5738,6 +5746,7 @@ virDomainControllerDefParseXML(xmlNodePtr node,
+@@ -5827,6 +5835,7 @@ virDomainControllerDefParseXML(xmlNodePtr node,
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO &&
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW &&
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390 &&
@@ -81,7 +81,7 @@ index 5485d86..73e5af4 100644
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Controllers must use the 'pci' address type"));
-@@ -6349,6 +6358,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt,
+@@ -6387,6 +6396,7 @@ virDomainNetDefParseXML(virDomainXMLOptionPtr xmlopt,
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO &&
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW &&
def->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390 &&
@@ -90,7 +90,7 @@ index 5485d86..73e5af4 100644
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Network interfaces must use 'pci' address type"));
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
-index cf075e1..f0344ac 100644
+index 380e2bb..1d70eba 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -207,6 +207,7 @@ enum virDomainDeviceAddressType {
@@ -102,26 +102,27 @@ index cf075e1..f0344ac 100644
VIR_DOMAIN_DEVICE_ADDRESS_TYPE_LAST
};
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
-index 5c8316f..c4c6fbd 100644
+index 72df793..a0f7773 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
-@@ -234,6 +234,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
-
- "vnc-share-policy", /* 150 */
- "device-del-event",
-+ "virtio-mmio",
+@@ -237,6 +237,8 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
+ "dmi-to-pci-bridge",
+ "i440fx-pci-hole64-size",
+ "q35-pci-hole64-size",
++
++ "virtio-mmio", /* 155 */
);
struct _virQEMUCaps {
-@@ -1381,6 +1382,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
- { "pci-bridge", QEMU_CAPS_DEVICE_PCI_BRIDGE },
+@@ -1385,6 +1387,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
{ "vfio-pci", QEMU_CAPS_DEVICE_VFIO_PCI },
{ "scsi-generic", QEMU_CAPS_DEVICE_SCSI_GENERIC },
+ { "i82801b11-bridge", QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE },
+ { "virtio-mmio", QEMU_CAPS_DEVICE_VIRTIO_MMIO },
};
static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsVirtioBlk[] = {
-@@ -2814,17 +2816,19 @@ virQEMUCapsUsedQMP(virQEMUCapsPtr qemuCaps)
+@@ -2831,17 +2834,19 @@ virQEMUCapsUsedQMP(virQEMUCapsPtr qemuCaps)
bool
virQEMUCapsSupportsChardev(virDomainDefPtr def,
virQEMUCapsPtr qemuCaps,
@@ -148,19 +149,20 @@ index 5c8316f..c4c6fbd 100644
+ chr->targetType == VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO));
}
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
-index 56f8405..fdb61b0 100644
+index 5180ee9..e000ce5 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
-@@ -190,6 +190,7 @@ enum virQEMUCapsFlags {
- QEMU_CAPS_MLOCK = 149, /* -realtime mlock=on|off */
- QEMU_CAPS_VNC_SHARE_POLICY = 150, /* set display sharing policy */
- QEMU_CAPS_DEVICE_DEL_EVENT = 151, /* DEVICE_DELETED event */
-+ QEMU_CAPS_DEVICE_VIRTIO_MMIO = 152, /* -device virtio-mmio */
+@@ -194,6 +194,8 @@ enum virQEMUCapsFlags {
+ QEMU_CAPS_I440FX_PCI_HOLE64_SIZE = 153, /* i440FX-pcihost.pci-hole64-size */
+ QEMU_CAPS_Q35_PCI_HOLE64_SIZE = 154, /* q35-pcihost.pci-hole64-size */
++ QEMU_CAPS_DEVICE_VIRTIO_MMIO = 155, /* -device virtio-mmio */
++
QEMU_CAPS_LAST, /* this must always be the last item */
};
+
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
-index 1d57ccc..360be4e 100644
+index 787381b..efbfc97 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -418,22 +418,27 @@ cleanup:
@@ -205,7 +207,7 @@ index 1d57ccc..360be4e 100644
if (net->driver.virtio.name == VIR_DOMAIN_NET_BACKEND_TYPE_VHOST) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
"%s", _("vhost-net is not supported with "
-@@ -1146,8 +1151,8 @@ cleanup:
+@@ -1154,8 +1159,8 @@ cleanup:
}
static void
@@ -216,7 +218,7 @@ index 1d57ccc..360be4e 100644
{
/*
declare address-less virtio devices to be of address type 'type'
-@@ -1281,7 +1286,7 @@ qemuDomainAssignS390Addresses(virDomainDefPtr def,
+@@ -1289,7 +1294,7 @@ qemuDomainAssignS390Addresses(virDomainDefPtr def,
if (STREQLEN(def->os.machine, "s390-ccw", 8) &&
virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_CCW)) {
@@ -225,7 +227,7 @@ index 1d57ccc..360be4e 100644
def, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW);
if (!(addrs = qemuDomainCCWAddressSetCreate()))
-@@ -1296,7 +1301,7 @@ qemuDomainAssignS390Addresses(virDomainDefPtr def,
+@@ -1304,7 +1309,7 @@ qemuDomainAssignS390Addresses(virDomainDefPtr def,
goto cleanup;
} else if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_S390)) {
/* deal with legacy virtio-s390 */
@@ -234,7 +236,7 @@ index 1d57ccc..360be4e 100644
def, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390);
}
-@@ -1319,6 +1324,18 @@ cleanup:
+@@ -1327,6 +1332,18 @@ cleanup:
return ret;
}
@@ -253,7 +255,7 @@ index 1d57ccc..360be4e 100644
static int
qemuSpaprVIOFindByReg(virDomainDefPtr def ATTRIBUTE_UNUSED,
-@@ -1834,6 +1851,10 @@ int qemuDomainAssignAddresses(virDomainDefPtr def,
+@@ -1912,6 +1929,10 @@ int qemuDomainAssignAddresses(virDomainDefPtr def,
if (rc)
return rc;
@@ -264,7 +266,7 @@ index 1d57ccc..360be4e 100644
return qemuDomainAssignPCIAddresses(def, qemuCaps, obj);
}
-@@ -3957,6 +3978,9 @@ qemuBuildDriveDevStr(virDomainDefPtr def,
+@@ -4367,6 +4388,9 @@ qemuBuildDriveDevStr(virDomainDefPtr def,
} else if (disk->info.type ==
VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390) {
virBufferAddLit(&opt, "virtio-blk-s390");
@@ -274,7 +276,7 @@ index 1d57ccc..360be4e 100644
} else {
virBufferAddLit(&opt, "virtio-blk-pci");
}
-@@ -4234,6 +4258,9 @@ qemuBuildControllerDevStr(virDomainDefPtr domainDef,
+@@ -4645,6 +4669,9 @@ qemuBuildControllerDevStr(virDomainDefPtr domainDef,
else if (def->info.type ==
VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390)
virBufferAddLit(&buf, "virtio-scsi-s390");
@@ -284,7 +286,7 @@ index 1d57ccc..360be4e 100644
else
virBufferAddLit(&buf, "virtio-scsi-pci");
break;
-@@ -4263,6 +4290,9 @@ qemuBuildControllerDevStr(virDomainDefPtr domainDef,
+@@ -4674,6 +4701,9 @@ qemuBuildControllerDevStr(virDomainDefPtr domainDef,
} else if (def->info.type ==
VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390) {
virBufferAddLit(&buf, "virtio-serial-s390");
@@ -294,7 +296,7 @@ index 1d57ccc..360be4e 100644
} else {
virBufferAddLit(&buf, "virtio-serial");
}
-@@ -4378,6 +4408,8 @@ qemuBuildNicDevStr(virDomainNetDefPtr net,
+@@ -4806,6 +4836,8 @@ qemuBuildNicDevStr(virDomainDefPtr def,
nic = "virtio-net-ccw";
else if (net->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390)
nic = "virtio-net-s390";
@@ -303,7 +305,7 @@ index 1d57ccc..360be4e 100644
else
nic = "virtio-net-pci";
-@@ -4622,6 +4654,9 @@ qemuBuildMemballoonDevStr(virDomainMemballoonDefPtr dev,
+@@ -5054,6 +5086,9 @@ qemuBuildMemballoonDevStr(virDomainDefPtr def,
case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW:
virBufferAddLit(&buf, "virtio-balloon-ccw");
break;
@@ -313,7 +315,7 @@ index 1d57ccc..360be4e 100644
default:
virReportError(VIR_ERR_XML_ERROR,
_("memballoon unsupported with address type '%s'"),
-@@ -5615,6 +5650,8 @@ qemuBuildRNGDeviceArgs(virCommandPtr cmd,
+@@ -6055,6 +6090,8 @@ qemuBuildRNGDeviceArgs(virCommandPtr cmd,
virBufferAsprintf(&buf, "virtio-rng-ccw,rng=%s", dev->info.alias);
else if (dev->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_S390)
virBufferAsprintf(&buf, "virtio-rng-s390,rng=%s", dev->info.alias);
@@ -322,7 +324,7 @@ index 1d57ccc..360be4e 100644
else
virBufferAsprintf(&buf, "virtio-rng-pci,rng=%s", dev->info.alias);
-@@ -6891,7 +6928,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+@@ -7331,7 +7368,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
*
* NB, no support for -netdev without use of -device
*/
@@ -331,16 +333,16 @@ index 1d57ccc..360be4e 100644
if (!(host = qemuBuildHostNetStr(net, driver,
',', vlan,
tapfdName, tapfdSize,
-@@ -6899,7 +6936,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+@@ -7339,7 +7376,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
goto cleanup;
virCommandAddArgList(cmd, "-netdev", host, NULL);
}
- if (qemuDomainSupportsNicdev(def, qemuCaps)) {
+ if (qemuDomainSupportsNicdev(def, qemuCaps, net)) {
- if (!(nic = qemuBuildNicDevStr(net, vlan, bootindex, qemuCaps)))
- goto cleanup;
- virCommandAddArgList(cmd, "-device", nic, NULL);
-@@ -6908,7 +6945,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
+ bool multiqueue = tapfdSize > 1 || vhostfdSize > 1;
+
+ if (!(nic = qemuBuildNicDevStr(def, net, vlan, bootindex,
+@@ -7351,7 +7388,7 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
goto cleanup;
virCommandAddArgList(cmd, "-net", nic, NULL);
}
@@ -349,7 +351,7 @@ index 1d57ccc..360be4e 100644
if (!(host = qemuBuildHostNetStr(net, driver,
',', vlan,
tapfdName, tapfdSize,
-@@ -7905,7 +7942,7 @@ qemuBuildCommandLine(virConnectPtr conn,
+@@ -8402,7 +8439,7 @@ qemuBuildCommandLine(virConnectPtr conn,
int vlan;
/* VLANs are not used with -netdev, so don't record them */
@@ -430,10 +432,10 @@ index 0000000..2acf3c9
+ </devices>
+</domain>
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
-index 0bf2724..2bdd18e 100644
+index 6ecabbf..ae8cc3b 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
-@@ -1032,6 +1032,10 @@ mymain(void)
+@@ -1062,6 +1062,10 @@ mymain(void)
DO_TEST("arm-vexpressa9-basic",
QEMU_CAPS_DEVICE, QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DTB,
QEMU_CAPS_DRIVE);
@@ -444,3 +446,6 @@ index 0bf2724..2bdd18e 100644
virObjectUnref(driver.config);
virObjectUnref(driver.caps);
+--
+1.8.3.1
+
diff --git a/libvirt.spec b/libvirt.spec
index 3d5661e..3615fa4 100644
--- a/libvirt.spec
+++ b/libvirt.spec
@@ -100,6 +100,9 @@
%define with_numactl 0%{!?_without_numactl:%{server_drivers}}
%define with_selinux 0%{!?_without_selinux:%{server_drivers}}
+# Just hardcode to off, since few people ever have apparmor RPMs installed
+%define with_apparmor 0%{!?_without_apparmor:0}
+
# A few optional bits off by default, we enable later
%define with_polkit 0%{!?_without_polkit:0}
%define with_capng 0%{!?_without_capng:0}
@@ -245,14 +248,19 @@
%if 0%{?fedora} >= 16
%define with_sanlock 0%{!?_without_sanlock:%{server_drivers}}
%endif
-%if 0%{?rhel} >= 6
+%if 0%{?rhel} == 6
%ifarch %{ix86} x86_64
%define with_sanlock 0%{!?_without_sanlock:%{server_drivers}}
%endif
%endif
+%if 0%{?rhel} >= 7
+ %ifarch x86_64
+ %define with_sanlock 0%{!?_without_sanlock:%{server_drivers}}
+ %endif
+%endif
# Enable libssh2 transport for new enough distros
-%if 0%{?fedora} >= 17 || 0%{?rhel} >= 6
+%if 0%{?fedora} >= 17
%define with_libssh2 0%{!?_without_libssh2:1}
%endif
@@ -347,10 +355,18 @@
%endif
+# RHEL releases provide stable tool chains and so it is safe to turn
+# compiler warning into errors without being worried about frequent
+# changes in reported warnings
+%if 0%{?rhel}
+ %define enable_werror --enable-werror
+%endif
+
+
Summary: Library providing a simple virtualization API
Name: libvirt
-Version: 1.1.1
-Release: 3%{?dist}%{?extra_release}
+Version: 1.1.2
+Release: 1%{?dist}%{?extra_release}
License: LGPLv2+
Group: Development/Libraries
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
@@ -361,21 +377,15 @@ URL: http://libvirt.org/
%endif
Source: http://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.gz
-# CVE-2013-4239: xen: memory corruption in legacy driver (bz #996241, bz
-# #996244)
-Patch0001: 0001-xen-fix-memory-corruption-in-legacy-driver.patch
# Fix launching ARM guests on x86 (patches posted upstream, F20 feature)
-Patch0002: 0002-conf-add-default-USB-controller-in-qemu-post-parse-c.patch
-Patch0003: 0003-qemu-rename-some-functions-in-qemu_command.c.patch
-Patch0004: 0004-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
-Patch0005: 0005-qemu-Only-setup-vhost-if-virtType-kvm.patch
-Patch0006: 0006-domain_conf-Add-default-memballon-in-PostParse-callb.patch
-Patch0007: 0007-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
-Patch0008: 0008-qemu-Fix-adding-specifying-char-devs-for-ARM.patch
-Patch0009: 0009-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
-Patch0010: 0010-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
-Patch0011: 0011-qemu-Fix-networking-for-ARM-guests.patch
-Patch0012: 0012-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
+Patch0001: 0001-qemu-Set-QEMU_AUDIO_DRV-none-with-nographic.patch
+Patch0002: 0002-domain_conf-Add-default-memballoon-in-PostParse-call.patch
+Patch0003: 0003-qemu-Don-t-add-default-memballoon-device-on-ARM.patch
+Patch0004: 0004-qemu-Fix-specifying-char-devs-for-ARM.patch
+Patch0005: 0005-qemu-Don-t-try-to-allocate-PCI-addresses-for-ARM.patch
+Patch0006: 0006-domain_conf-Add-disk-bus-sd-wire-it-up-for-qemu.patch
+Patch0007: 0007-qemu-Fix-networking-for-ARM-guests.patch
+Patch0008: 0008-qemu-Support-virtio-mmio-transport-for-virtio-on-ARM.patch
%if %{with_libvirtd}
Requires: libvirt-daemon = %{version}-%{release}
@@ -438,7 +448,9 @@ BuildRequires: readline-devel
BuildRequires: ncurses-devel
BuildRequires: gettext
BuildRequires: libtasn1-devel
+%if (0%{?rhel} && 0%{?rhel} < 7) || (0%{?fedora} && 0%{?fedora} < 19)
BuildRequires: libgcrypt-devel
+%endif
BuildRequires: gnutls-devel
BuildRequires: libattr-devel
%if %{with_libvirtd}
@@ -488,6 +500,9 @@ BuildRequires: avahi-devel
%if %{with_selinux}
BuildRequires: libselinux-devel
%endif
+%if %{with_apparmor}
+BuildRequires: libapparmor-devel
+%endif
%if %{with_network}
BuildRequires: dnsmasq >= 2.41
BuildRequires: iptables
@@ -1147,10 +1162,8 @@ of recent versions of Linux (and other OSes).
%prep
%setup -q
-# CVE-2013-4239: xen: memory corruption in legacy driver (bz #996241, bz
-# #996244)
-%patch0001 -p1
# Fix launching ARM guests on x86 (patches posted upstream, F20 feature)
+%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
%patch0004 -p1
@@ -1158,10 +1171,6 @@ of recent versions of Linux (and other OSes).
%patch0006 -p1
%patch0007 -p1
%patch0008 -p1
-%patch0009 -p1
-%patch0010 -p1
-%patch0011 -p1
-%patch0012 -p1
%build
%if ! %{with_xen}
@@ -1300,6 +1309,10 @@ of recent versions of Linux (and other OSes).
%define _without_selinux --without-selinux
%endif
+%if ! %{with_apparmor}
+ %define _without_apparmor --without-apparmor
+%endif
+
%if ! %{with_hal}
%define _without_hal --without-hal
%endif
@@ -1352,10 +1365,6 @@ of recent versions of Linux (and other OSes).
%define init_scripts --with-init_script=redhat
%endif
-%if 0%{?enable_autotools}
- autoreconf -if
-%endif
-
%if %{with_selinux}
%if 0%{?fedora} >= 17 || 0%{?rhel} >= 7
%define with_selinux_mount --with-selinux-mount="/sys/fs/selinux"
@@ -1364,6 +1373,12 @@ of recent versions of Linux (and other OSes).
%endif
%endif
+# place macros above and build commands below this comment
+
+%if 0%{?enable_autotools}
+ autoreconf -if
+%endif
+
%configure %{?_without_xen} \
%{?_without_qemu} \
%{?_without_openvz} \
@@ -1399,6 +1414,7 @@ of recent versions of Linux (and other OSes).
%{?_without_netcf} \
%{?_without_selinux} \
%{?_with_selinux_mount} \
+ %{?_without_apparmor} \
%{?_without_hal} \
%{?_without_udev} \
%{?_without_yajl} \
@@ -1413,6 +1429,8 @@ of recent versions of Linux (and other OSes).
%{with_packager_version} \
--with-qemu-user=%{qemu_user} \
--with-qemu-group=%{qemu_group} \
+ %{?enable_werror} \
+ --enable-expensive-tests \
%{init_scripts}
make %{?_smp_mflags}
gzip -9 ChangeLog
@@ -1472,12 +1490,6 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_lxc.aug
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_lxc.aug
%endif
-%if ! %{with_python}
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libvirt-python-%{version}
-%else
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libvirt-python-%{version}/examples
-%endif
-
%if ! %{with_qemu}
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/libvirtd.qemu
@@ -1770,6 +1782,7 @@ fi
%config(noreplace) %{_sysconfdir}/sysconfig/libvirtd
%config(noreplace) %{_sysconfdir}/sysconfig/virtlockd
%config(noreplace) %{_sysconfdir}/libvirt/libvirtd.conf
+%config(noreplace) %{_sysconfdir}/libvirt/virtlockd.conf
%if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
%config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf
%endif
@@ -1811,6 +1824,7 @@ fi
%if %{with_qemu}
%ghost %dir %attr(0700, root, root) %{_localstatedir}/run/libvirt/qemu/
%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/
+%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/channel/
%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/lib/libvirt/qemu/channel/target/
%dir %attr(0750, %{qemu_user}, %{qemu_group}) %{_localstatedir}/cache/libvirt/qemu/
%endif
@@ -1850,6 +1864,8 @@ fi
%{_datadir}/augeas/lenses/libvirtd.aug
%{_datadir}/augeas/lenses/tests/test_libvirtd.aug
+%{_datadir}/augeas/lenses/virtlockd.aug
+%{_datadir}/augeas/lenses/tests/test_virtlockd.aug
%{_datadir}/augeas/lenses/libvirt_lockd.aug
%{_datadir}/augeas/lenses/tests/test_libvirt_lockd.aug
@@ -1873,10 +1889,16 @@ fi
%endif
%attr(0755, root, root) %{_libexecdir}/libvirt_iohelper
+
+ %if %{with_apparmor}
+%attr(0755, root, root) %{_libexecdir}/virt-aa-helper
+ %endif
+
%attr(0755, root, root) %{_sbindir}/libvirtd
%attr(0755, root, root) %{_sbindir}/virtlockd
%{_mandir}/man8/libvirtd.8*
+%{_mandir}/man8/virtlockd.8*
%if %{with_driver_modules}
%if %{with_network}
@@ -2012,14 +2034,17 @@ fi
%doc AUTHORS ChangeLog.gz NEWS README COPYING COPYING.LESSER TODO
%config(noreplace) %{_sysconfdir}/libvirt/libvirt.conf
+%config(noreplace) %{_sysconfdir}/libvirt/virt-login-shell.conf
%{_mandir}/man1/virsh.1*
%{_mandir}/man1/virt-xml-validate.1*
%{_mandir}/man1/virt-pki-validate.1*
%{_mandir}/man1/virt-host-validate.1*
+%{_mandir}/man1/virt-login-shell.1*
%{_bindir}/virsh
%{_bindir}/virt-xml-validate
%{_bindir}/virt-pki-validate
%{_bindir}/virt-host-validate
+%attr(4755, root, root) %{_bindir}/virt-login-shell
%{_libdir}/lib*.so.*
%if %{with_dtrace}
@@ -2095,12 +2120,14 @@ fi
%{_libdir}/python*/site-packages/libvirt_qemu.py*
%{_libdir}/python*/site-packages/libvirt_lxc.py*
%{_libdir}/python*/site-packages/libvirtmod*
-%doc python/tests/*.py
%doc examples/python
%doc examples/domain-events/events-python
%endif
%changelog
+* Mon Sep 2 2013 Daniel P. Berrange <berrange at redhat.com> - 1.1.2-1
+- Update to 1.1.2 release
+
* Tue Aug 20 2013 Cole Robinson <crobinso at redhat.com> - 1.1.1-3
- Fix launching ARM guests on x86 (patches posted upstream, F20 feature)
diff --git a/sources b/sources
index 55136e3..bfb1abc 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-632f30a2f22fbb404b8e10702d7f55ca libvirt-1.1.1.tar.gz
+1835bbfa492099bce12e2934870e5611 libvirt-1.1.2.tar.gz
More information about the scm-commits
mailing list