This patchset is RFC as it requires qemu patches to preserve format inside the 'backing file format' field, or we could break qcow2 images for older libvirt. The main rationale is documented in 5/5. Peter Krempa (5): [DO NOT PUSH] update qemu capabilities for 'backing-mask-protocol' qemu: capabilities: Introduce QEMU_CAPS_BLOCKJOB_BACKING_MASK_PROTOCOL qemu: monitor: Use 'backing-mask-protocol' for blockjobs when available qemu: block: Always add extra 'raw' layer for storage slice qemuBlockStorageSourceNeedsFormatLayer: Stop formatting 'raw' driver when not needed src/qemu/qemu_block.c | 66 +-- src/qemu/qemu_block.h | 3 +- src/qemu/qemu_capabilities.c | 5 + src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_domain.c | 2 +- src/qemu/qemu_monitor.c | 1 + src/qemu/qemu_monitor_json.c | 10 + src/qemu/qemu_monitor_priv.h | 2 + .../caps_8.2.0_x86_64.replies | 21 +- .../caps_8.2.0_x86_64.xml | 5 +- tests/qemuhotplugtest.c | 15 - .../async-teardown.x86_64-latest.args | 5 +- .../audio-alsa-best.x86_64-latest.args | 5 +- .../audio-alsa-full.x86_64-latest.args | 5 +- .../audio-alsa-minimal.x86_64-latest.args | 5 +- .../audio-coreaudio-best.x86_64-latest.args | 5 +- .../audio-coreaudio-full.x86_64-latest.args | 5 +- ...audio-coreaudio-minimal.x86_64-latest.args | 5 +- ...udio-default-nographics.x86_64-latest.args | 5 +- .../audio-default-sdl.x86_64-latest.args | 5 +- .../audio-default-spice.x86_64-latest.args | 5 +- .../audio-default-vnc.x86_64-latest.args | 5 +- .../audio-file-best.x86_64-latest.args | 5 +- .../audio-file-full.x86_64-latest.args | 5 +- .../audio-file-minimal.x86_64-latest.args | 5 +- .../audio-jack-full.x86_64-latest.args | 5 +- .../audio-jack-minimal.x86_64-latest.args | 5 +- .../audio-many-backends.x86_64-latest.args | 5 +- .../audio-none-best.x86_64-latest.args | 5 +- .../audio-none-full.x86_64-latest.args | 5 +- .../audio-none-minimal.x86_64-latest.args | 5 +- .../audio-oss-best.x86_64-latest.args | 5 +- .../audio-oss-full.x86_64-latest.args | 5 +- .../audio-oss-minimal.x86_64-latest.args | 5 +- .../audio-pipewire-best.x86_64-latest.args | 5 +- .../audio-pipewire-full.x86_64-latest.args | 5 +- .../audio-pipewire-minimal.x86_64-latest.args | 5 +- .../audio-pulseaudio-best.x86_64-latest.args | 5 +- .../audio-pulseaudio-full.x86_64-latest.args | 5 +- ...udio-pulseaudio-minimal.x86_64-latest.args | 5 +- .../audio-sdl-best.x86_64-latest.args | 5 +- .../audio-sdl-full.x86_64-latest.args | 5 +- .../audio-sdl-minimal.x86_64-latest.args | 5 +- .../audio-spice-best.x86_64-latest.args | 5 +- .../audio-spice-full.x86_64-latest.args | 5 +- .../audio-spice-minimal.x86_64-latest.args | 5 +- .../autoindex.x86_64-latest.args | 5 +- .../balloon-device-auto.x86_64-latest.args | 5 +- ...loon-device-deflate-off.x86_64-latest.args | 5 +- .../balloon-device-deflate.x86_64-latest.args | 5 +- .../balloon-device-period.x86_64-latest.args | 5 +- .../balloon-device.x86_64-latest.args | 5 +- .../blkiotune-device.x86_64-latest.args | 5 +- .../blkiotune.x86_64-latest.args | 5 +- .../boot-cdrom.x86_64-latest.args | 5 +- .../boot-complex.x86_64-latest.args | 35 +- .../boot-floppy-q35.x86_64-latest.args | 5 +- .../boot-floppy.x86_64-latest.args | 10 +- ...boot-menu-disable-drive.x86_64-latest.args | 5 +- .../boot-menu-disable.x86_64-latest.args | 5 +- ...enu-enable-with-timeout.x86_64-latest.args | 5 +- .../boot-menu-enable.x86_64-latest.args | 5 +- .../boot-multi.x86_64-latest.args | 5 +- .../boot-network.x86_64-latest.args | 5 +- .../boot-order.x86_64-latest.args | 20 +- .../channel-guestfwd.x86_64-latest.args | 5 +- ...l-qemu-vdagent-features.x86_64-latest.args | 5 +- .../channel-qemu-vdagent.x86_64-latest.args | 5 +- .../channel-spicevmc.x86_64-latest.args | 5 +- .../channel-virtio-auto.x86_64-latest.args | 5 +- .../channel-virtio-autoadd.x86_64-latest.args | 5 +- ...annel-virtio-autoassign.x86_64-latest.args | 5 +- .../channel-virtio-default.x86_64-latest.args | 5 +- .../channel-virtio-state.x86_64-latest.args | 5 +- .../channel-virtio-unix.x86_64-latest.args | 5 +- .../channel-virtio.x86_64-latest.args | 5 +- .../clock-absolute.x86_64-latest.args | 5 +- .../clock-catchup.x86_64-latest.args | 5 +- .../clock-france.x86_64-latest.args | 5 +- .../clock-hpet-off.x86_64-latest.args | 5 +- ...caltime-basis-localtime.x86_64-latest.args | 5 +- .../clock-localtime.x86_64-latest.args | 5 +- .../clock-realtime.x86_64-latest.args | 5 +- .../clock-utc.x86_64-latest.args | 5 +- .../clock-variable.x86_64-latest.args | 5 +- .../console-compat-auto.x86_64-latest.args | 5 +- .../console-compat.x86_64-latest.args | 5 +- .../console-virtio-many.x86_64-latest.args | 5 +- .../console-virtio.x86_64-latest.args | 5 +- .../controller-order.x86_64-latest.args | 10 +- .../controller-virtio-scsi.x86_64-latest.args | 25 +- ...st-passthrough-features.x86_64-latest.args | 5 +- .../cputune-cpuset-big-id.x86_64-latest.args | 5 +- .../cputune-zero-shares.x86_64-latest.args | 5 +- .../cputune.x86_64-latest.args | 5 +- .../devices-acpi-index.x86_64-latest.args | 10 +- .../disk-aio.x86_64-latest.args | 5 +- ...-backing-chains-noindex.x86_64-latest.args | 10 +- .../disk-blockio.x86_64-latest.args | 10 +- .../disk-boot-cdrom.x86_64-latest.args | 10 +- .../disk-boot-disk.x86_64-latest.args | 10 +- .../disk-cdrom-bus-other.x86_64-latest.args | 5 +- ...sk-cdrom-network-nbdkit.x86_64-latest.args | 15 +- .../disk-cdrom-network.x86_64-latest.args | 15 +- .../disk-cdrom-tray.x86_64-latest.args | 10 +- .../disk-cdrom.x86_64-latest.args | 10 +- .../disk-copy_on_read.x86_64-latest.args | 5 +- .../disk-detect-zeroes.x86_64-latest.args | 5 +- .../disk-device-removable.x86_64-latest.args | 15 +- .../disk-discard.x86_64-latest.args | 5 +- .../disk-floppy-q35.x86_64-latest.args | 5 +- .../disk-floppy-tray.x86_64-latest.args | 15 +- .../disk-floppy.x86_64-latest.args | 15 +- .../disk-fmt-qcow.x86_64-latest.args | 5 +- .../disk-geometry.x86_64-latest.args | 5 +- .../disk-ide-split.x86_64-latest.args | 10 +- .../disk-ide-wwn.x86_64-latest.args | 5 +- .../disk-ioeventfd.x86_64-latest.args | 5 +- .../disk-network-gluster.x86_64-latest.args | 10 +- ...isk-network-http-nbdkit.x86_64-latest.args | 20 +- .../disk-network-http.x86_64-latest.args | 20 +- .../disk-network-iscsi.x86_64-latest.args | 35 +- .../disk-network-nbd.x86_64-latest.args | 30 +- .../disk-network-nfs.x86_64-latest.args | 5 +- ...rbd-encryption-luks-any.x86_64-latest.args | 7 +- ...sk-network-rbd-no-colon.x86_64-latest.args | 10 +- .../disk-network-rbd.x86_64-latest.args | 30 +- ...isk-network-source-auth.x86_64-latest.args | 15 +- ...work-source-curl-nbdkit.x86_64-latest.args | 20 +- ...isk-network-source-curl.x86_64-latest.args | 20 +- ...disk-network-ssh-nbdkit.x86_64-latest.args | 5 +- ...sk-network-ssh-password.x86_64-latest.args | 5 +- .../disk-network-ssh.x86_64-latest.args | 5 +- ...rk-tlsx509-nbd-hostname.x86_64-latest.args | 5 +- ...isk-network-tlsx509-nbd.x86_64-latest.args | 5 +- .../disk-no-boot.x86_64-latest.args | 15 +- .../disk-nvme.x86_64-latest.args | 15 +- .../disk-order.x86_64-latest.args | 20 +- .../disk-readonly-disk.x86_64-latest.args | 10 +- .../disk-rotation.x86_64-latest.args | 15 +- .../disk-sata-device.x86_64-latest.args | 5 +- .../disk-scsi-device-auto.x86_64-latest.args | 10 +- .../disk-scsi-disk-split.x86_64-latest.args | 20 +- .../disk-scsi-disk-vpd.x86_64-latest.args | 10 +- .../disk-scsi-disk-wwn.x86_64-latest.args | 10 +- ...sk-scsi-lun-passthrough.x86_64-latest.args | 10 +- .../disk-scsi.x86_64-latest.args | 30 +- .../disk-serial.x86_64-latest.args | 10 +- .../disk-shared.x86_64-latest.args | 20 +- .../disk-slices.x86_64-latest.args | 8 +- .../disk-snapshot.x86_64-latest.args | 5 +- .../disk-source-pool-mode.x86_64-latest.args | 20 +- .../disk-source-pool.x86_64-latest.args | 10 +- .../disk-usb-device.x86_64-latest.args | 10 +- .../disk-vhostvdpa.x86_64-latest.args | 5 +- .../disk-virtio-queues.x86_64-latest.args | 15 +- ...irtio-scsi-reservations.x86_64-latest.args | 10 +- .../disk-virtio.x86_64-latest.args | 20 +- .../event_idx.x86_64-latest.args | 5 +- .../fips-enabled.x86_64-latest.args | 5 +- ...-auto-efi-enrolled-keys.x86_64-latest.args | 5 +- ...uto-efi-loader-insecure.x86_64-latest.args | 5 +- ...re-auto-efi-loader-path.x86_64-latest.args | 5 +- ...-auto-efi-loader-secure.x86_64-latest.args | 5 +- ...to-efi-no-enrolled-keys.x86_64-latest.args | 5 +- ...are-auto-efi-no-secboot.x86_64-latest.args | 5 +- ...are-auto-efi-nvram-file.x86_64-latest.args | 5 +- ...efi-nvram-network-iscsi.x86_64-latest.args | 5 +- ...o-efi-nvram-network-nbd.x86_64-latest.args | 5 +- ...are-auto-efi-nvram-path.x86_64-latest.args | 5 +- ...auto-efi-nvram-template.x86_64-latest.args | 5 +- ...rmware-auto-efi-secboot.x86_64-latest.args | 5 +- ...rmware-auto-efi-smm-off.x86_64-latest.args | 5 +- .../firmware-auto-efi.x86_64-latest.args | 5 +- ...are-manual-efi-acpi-q35.x86_64-latest.args | 5 +- ...are-manual-efi-features.x86_64-latest.args | 5 +- ...loader-path-nonstandard.x86_64-latest.args | 5 +- ...anual-efi-loader-secure.x86_64-latest.args | 5 +- ...olled-keys-legacy-paths.x86_64-latest.args | 5 +- ...al-efi-no-enrolled-keys.x86_64-latest.args | 5 +- ...no-secboot-legacy-paths.x86_64-latest.args | 5 +- ...e-manual-efi-no-secboot.x86_64-latest.args | 5 +- ...e-manual-efi-nvram-file.x86_64-latest.args | 5 +- ...efi-nvram-network-iscsi.x86_64-latest.args | 5 +- ...l-efi-nvram-network-nbd.x86_64-latest.args | 5 +- ...am-template-nonstandard.x86_64-latest.args | 5 +- ...nual-efi-nvram-template.x86_64-latest.args | 5 +- ...fi-secboot-legacy-paths.x86_64-latest.args | 5 +- ...ware-manual-efi-secboot.x86_64-latest.args | 5 +- .../firmware-manual-efi.x86_64-latest.args | 5 +- .../graphics-dbus-audio.x86_64-latest.args | 5 +- ...egl-headless-rendernode.x86_64-latest.args | 5 +- .../graphics-egl-headless.x86_64-latest.args | 5 +- ...graphics-sdl-fullscreen.x86_64-latest.args | 5 +- .../graphics-sdl.x86_64-latest.args | 5 +- ...ics-vnc-auto-socket-cfg.x86_64-latest.args | 5 +- ...aphics-vnc-egl-headless.x86_64-latest.args | 5 +- ...hics-vnc-no-listen-attr.x86_64-latest.args | 5 +- .../graphics-vnc-policy.x86_64-latest.args | 5 +- .../graphics-vnc-power.x86_64-latest.args | 5 +- ...remove-generated-socket.x86_64-latest.args | 5 +- .../graphics-vnc-sasl.x86_64-latest.args | 5 +- .../graphics-vnc.x86_64-latest.args | 5 +- ...tdev-pci-address-device.x86_64-latest.args | 5 +- .../hostdev-pci-address.x86_64-latest.args | 5 +- .../hostdev-scsi-lsi.x86_64-latest.args | 5 +- ...dev-scsi-vhost-scsi-pci.x86_64-latest.args | 5 +- ...ostdev-scsi-virtio-scsi.x86_64-latest.args | 5 +- ...usb-address-device-boot.x86_64-latest.args | 5 +- ...tdev-usb-address-device.x86_64-latest.args | 5 +- .../hostdev-usb-address.x86_64-latest.args | 5 +- ...ostdev-vfio-multidomain.x86_64-latest.args | 5 +- .../hostdev-vfio.x86_64-latest.args | 5 +- .../hugepages-memaccess.x86_64-latest.args | 5 +- .../hugepages-memaccess2.x86_64-latest.args | 5 +- .../hugepages-shared.x86_64-latest.args | 5 +- .../input-usbmouse-addr.x86_64-latest.args | 5 +- .../input-usbmouse.x86_64-latest.args | 5 +- .../input-usbtablet.x86_64-latest.args | 5 +- .../iothreads-disk.x86_64-latest.args | 10 +- ...threads-virtio-scsi-pci.x86_64-latest.args | 10 +- .../kvm-pit-delay.x86_64-latest.args | 5 +- .../kvm-pit-discard.x86_64-latest.args | 5 +- ...nch-security-sev-direct.x86_64-latest.args | 5 +- .../machine-aliases1.x86_64-latest.args | 5 +- .../machine-aliases2.x86_64-latest.args | 5 +- .../machine-core-off.x86_64-latest.args | 5 +- .../machine-core-on.x86_64-latest.args | 5 +- .../machine-vmport-opt.x86_64-latest.args | 5 +- ...emory-hotplug-dimm-addr.x86_64-latest.args | 5 +- .../memory-hotplug-dimm.x86_64-latest.args | 5 +- ...memory-hotplug-multiple.x86_64-latest.args | 5 +- ...y-hotplug-nvdimm-access.x86_64-latest.args | 5 +- ...ry-hotplug-nvdimm-align.x86_64-latest.args | 5 +- ...ry-hotplug-nvdimm-label.x86_64-latest.args | 5 +- ...ory-hotplug-nvdimm-pmem.x86_64-latest.args | 5 +- ...hotplug-nvdimm-readonly.x86_64-latest.args | 5 +- .../memory-hotplug-nvdimm.x86_64-latest.args | 5 +- ...mory-hotplug-virtio-mem.x86_64-latest.args | 5 +- ...ory-hotplug-virtio-pmem.x86_64-latest.args | 5 +- .../memory-hotplug.x86_64-latest.args | 5 +- .../memtune-unlimited.x86_64-latest.args | 5 +- .../memtune.x86_64-latest.args | 5 +- .../migrate.x86_64-latest.args | 5 +- .../minimal.x86_64-latest.args | 5 +- .../misc-acpi.x86_64-latest.args | 5 +- .../misc-disable-s3.x86_64-latest.args | 5 +- .../misc-disable-suspends.x86_64-latest.args | 5 +- .../misc-enable-s4.x86_64-latest.args | 5 +- .../misc-no-reboot.x86_64-latest.args | 5 +- .../misc-uuid.x86_64-latest.args | 5 +- ...ultifunction-pci-device.x86_64-latest.args | 5 +- .../net-client.x86_64-latest.args | 5 +- .../net-eth-hostip.x86_64-latest.args | 5 +- .../net-eth-ifname.x86_64-latest.args | 5 +- .../net-eth-names.x86_64-latest.args | 5 +- .../net-eth-unmanaged-tap.x86_64-latest.args | 5 +- .../net-eth.x86_64-latest.args | 5 +- .../net-hostdev-bootorder.x86_64-latest.args | 5 +- ...net-hostdev-multidomain.x86_64-latest.args | 5 +- ...ostdev-vfio-multidomain.x86_64-latest.args | 5 +- .../net-hostdev-vfio.x86_64-latest.args | 5 +- .../net-hostdev.x86_64-latest.args | 5 +- .../net-mcast.x86_64-latest.args | 5 +- .../net-server.x86_64-latest.args | 5 +- .../net-udp.x86_64-latest.args | 5 +- .../net-user-addr.x86_64-latest.args | 5 +- .../net-user-passt.x86_64-latest.args | 5 +- .../net-user.x86_64-latest.args | 5 +- .../net-vhostuser-multiq.x86_64-latest.args | 5 +- .../net-virtio-device.x86_64-latest.args | 5 +- ...virtio-disable-offloads.x86_64-latest.args | 5 +- .../net-virtio-netdev.x86_64-latest.args | 5 +- .../net-virtio-rss.x86_64-latest.args | 5 +- ...et-virtio-rxtxqueuesize.x86_64-latest.args | 5 +- ...-virtio-teaming-hostdev.x86_64-latest.args | 5 +- .../net-virtio-teaming.x86_64-latest.args | 5 +- .../net-virtio.x86_64-latest.args | 5 +- .../nosharepages.x86_64-latest.args | 5 +- ...auto-memory-vcpu-cpuset.x86_64-latest.args | 5 +- ...no-cpuset-and-placement.x86_64-latest.args | 5 +- ...to-vcpu-static-numatune.x86_64-latest.args | 5 +- ...static-memory-auto-vcpu.x86_64-latest.args | 5 +- .../qemuxml2argvdata/numad.x86_64-latest.args | 5 +- ...ne-auto-nodeset-invalid.x86_64-latest.args | 5 +- .../panic-no-address.x86_64-latest.args | 5 +- .../qemuxml2argvdata/panic.x86_64-latest.args | 5 +- ...arallel-parport-chardev.x86_64-latest.args | 5 +- .../parallel-tcp-chardev.x86_64-latest.args | 5 +- .../pci-autoadd-addr.x86_64-latest.args | 5 +- .../pci-autoadd-idx.x86_64-latest.args | 5 +- .../pci-autofill-addr.x86_64-latest.args | 5 +- .../pci-bridge-many-disks.x86_64-latest.args | 525 +++++++----------- .../pci-bridge.x86_64-latest.args | 5 +- .../pci-many.x86_64-latest.args | 145 ++--- .../pci-rom.x86_64-latest.args | 5 +- .../pcie-expander-bus.x86_64-latest.args | 5 +- .../pcie-root-port.x86_64-latest.args | 5 +- ...-switch-downstream-port.x86_64-latest.args | 5 +- ...ie-switch-upstream-port.x86_64-latest.args | 5 +- .../pcihole64-q35.x86_64-latest.args | 5 +- .../q35-pcie-autoadd.x86_64-latest.args | 5 +- .../q35-pcie.x86_64-latest.args | 5 +- .../q35-usb2-multi.x86_64-latest.args | 5 +- .../q35-usb2-reorder.x86_64-latest.args | 5 +- .../q35-usb2.x86_64-latest.args | 5 +- tests/qemuxml2argvdata/q35.x86_64-latest.args | 5 +- .../qemu-ns-alt.x86_64-latest.args | 5 +- ...qemu-ns-commandline-ns0.x86_64-latest.args | 5 +- ...qemu-ns-commandline-ns1.x86_64-latest.args | 5 +- .../qemu-ns-commandline.x86_64-latest.args | 5 +- ...-domain-commandline-ns0.x86_64-latest.args | 5 +- ...u-ns-domain-commandline.x86_64-latest.args | 5 +- .../qemu-ns-domain-ns0.x86_64-latest.args | 5 +- .../qemu-ns-no-env.x86_64-latest.args | 5 +- .../qemu-ns.x86_64-latest.args | 5 +- .../restore-v2-fd.x86_64-latest.args | 5 +- .../restore-v2.x86_64-latest.args | 5 +- .../seclabel-dac-none.x86_64-latest.args | 5 +- ...label-dynamic-baselabel.x86_64-latest.args | 5 +- ...label-dynamic-labelskip.x86_64-latest.args | 5 +- ...clabel-dynamic-override.x86_64-latest.args | 10 +- ...eclabel-dynamic-relabel.x86_64-latest.args | 5 +- .../seclabel-dynamic.x86_64-latest.args | 5 +- .../seclabel-none.x86_64-latest.args | 5 +- ...clabel-static-labelskip.x86_64-latest.args | 5 +- ...seclabel-static-relabel.x86_64-latest.args | 5 +- .../seclabel-static.x86_64-latest.args | 5 +- ...rial-dev-chardev-iobase.x86_64-latest.args | 5 +- .../serial-dev-chardev.x86_64-latest.args | 5 +- .../serial-file-chardev.x86_64-latest.args | 5 +- .../serial-file-log.x86_64-latest.args | 5 +- .../serial-many-chardev.x86_64-latest.args | 5 +- .../serial-pty-chardev.x86_64-latest.args | 5 +- .../serial-spiceport.x86_64-latest.args | 5 +- .../serial-tcp-chardev.x86_64-latest.args | 5 +- ...rial-tcp-telnet-chardev.x86_64-latest.args | 5 +- ...p-tlsx509-chardev-notls.x86_64-latest.args | 5 +- ...-tlsx509-chardev-verify.x86_64-latest.args | 5 +- ...ial-tcp-tlsx509-chardev.x86_64-latest.args | 5 +- ...-tlsx509-secret-chardev.x86_64-latest.args | 5 +- .../serial-udp-chardev.x86_64-latest.args | 5 +- .../serial-vc-chardev.x86_64-latest.args | 5 +- .../smbios-type-fwcfg.x86_64-latest.args | 5 +- .../smbios.x86_64-latest.args | 5 +- .../user-aliases.x86_64-latest.args | 10 +- .../user-aliases2.x86_64-latest.args | 5 +- ...host-user-gpu-secondary.x86_64-latest.args | 5 +- .../vhost-user-vga.x86_64-latest.args | 5 +- .../video-none-device.x86_64-latest.args | 5 +- .../video-qxl-heads.x86_64-latest.args | 5 +- .../video-qxl-noheads.x86_64-latest.args | 5 +- .../video-qxl-resolution.x86_64-latest.args | 5 +- .../video-vga-qxl-heads.x86_64-latest.args | 5 +- .../virtio-lun.x86_64-latest.args | 10 +- ...virtio-non-transitional.x86_64-latest.args | 5 +- ...virtio-options-disk-ats.x86_64-latest.args | 10 +- ...rtio-options-disk-iommu.x86_64-latest.args | 10 +- ...tio-options-disk-packed.x86_64-latest.args | 10 +- .../virtio-options.x86_64-latest.args | 5 +- .../virtio-transitional.x86_64-latest.args | 5 +- .../vmcoreinfo.x86_64-latest.args | 5 +- .../watchdog-device.x86_64-latest.args | 5 +- .../watchdog-dump.x86_64-latest.args | 5 +- .../watchdog-injectnmi.x86_64-latest.args | 5 +- .../watchdog.x86_64-latest.args | 5 +- 366 files changed, 1267 insertions(+), 1854 deletions(-) -- 2.43.0 _______________________________________________ Devel mailing list -- devel@xxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxx