[PATCH 00/13] qemu: NVRAM template handling fixes and support for block device backed NVRAM

This patch fixes a few quirks regarding block device use for NVRAM backing and introduces support for populating the block device from template. Peter Krempa (13): qemuPrepareNVRAM: Don't attempt to create NVRAM on block device qemuFirmwareEnsureNVRAM: Don't try to setup non-local nvram qemu: Install backing store terminators for 'pflash' blockdevs conf: domain: Clarify nvram/loader format logic docs: formatdomain: Clarify that NVRAM template is also being autoselected firmware: Add 'templateFormat' XML attribute and plumb it in conf: domain: Output 'format' attribute of '<nvram>' also for' raw images conf: Always format firmware image format qemuPrepareNVRAM: Refuse conversion of NVRAM backing file format qemuFirmwareMatchDomain: Don't base firmware selection on nvram image format conf: Remove nonsensical requirement of nvram format matching firmware format qemu: process: Extract setup of file-backed nvram from template qemu: process: Introduce setup of block-device backed NVRAM docs/formatdomain.rst | 22 +-- src/conf/domain_conf.c | 62 +++++---- src/conf/domain_conf.h | 1 + src/conf/schemas/domaincommon.rng | 17 ++- src/qemu/qemu_domain.c | 2 + src/qemu/qemu_firmware.c | 47 ++++--- src/qemu/qemu_process.c | 127 +++++++++++++++--- .../aarch64-virt-graphics.aarch64-latest.xml | 4 +- ...ch64-virt-headless-mmio.aarch64-latest.xml | 4 +- .../aarch64-virt-headless.aarch64-latest.xml | 4 +- ...ware-auto-bios-stateless.x86_64-latest.xml | 2 +- .../firmware-auto-bios.x86_64-latest.xml | 2 +- ...efi-aarch64.aarch64-latest.abi-update.args | 4 +- ...-efi-aarch64.aarch64-latest.abi-update.xml | 2 +- ...rmware-auto-efi-aarch64.aarch64-latest.xml | 4 +- ...e-auto-efi-enrolled-keys.x86_64-latest.xml | 4 +- ...loader-qcow2-nvram-path.x86_64-latest.args | 4 +- ...-loader-qcow2-nvram-path.x86_64-latest.xml | 2 +- ...efi-format-loader-qcow2.x86_64-latest.args | 4 +- ...-efi-format-loader-qcow2.x86_64-latest.xml | 2 +- ...t-loader-raw.aarch64-latest.abi-update.xml | 4 +- ...o-efi-format-loader-raw.aarch64-latest.xml | 4 +- ...uto-efi-format-mismatch.x86_64-latest.args | 37 +++++ ...auto-efi-format-mismatch.x86_64-latest.err | 1 - ...auto-efi-format-mismatch.x86_64-latest.xml | 41 ++++++ .../firmware-auto-efi-format-mismatch.xml | 4 +- ...nvram-qcow2-network-nbd.x86_64-latest.args | 6 +- ...-nvram-qcow2-network-nbd.x86_64-latest.xml | 2 +- ...uto-efi-format-nvram-qcow2-network-nbd.xml | 2 +- ...format-nvram-qcow2-path.x86_64-latest.args | 4 +- ...-format-nvram-qcow2-path.x86_64-latest.xml | 2 +- ...-efi-format-nvram-qcow2.x86_64-latest.args | 4 +- ...o-efi-format-nvram-qcow2.x86_64-latest.xml | 2 +- ...auto-efi-loader-insecure.x86_64-latest.xml | 4 +- ...-loader-path-nonstandard.x86_64-latest.xml | 2 +- ...are-auto-efi-loader-path.x86_64-latest.xml | 4 +- ...oader-secure.x86_64-latest.abi-update.args | 4 +- ...loader-secure.x86_64-latest.abi-update.xml | 2 +- ...e-auto-efi-loader-secure.x86_64-latest.xml | 4 +- ...ngarch64.loongarch64-latest.abi-update.xml | 4 +- ...uto-efi-loongarch64.loongarch64-latest.xml | 4 +- ...uto-efi-no-enrolled-keys.x86_64-latest.xml | 4 +- ...ware-auto-efi-no-secboot.x86_64-latest.xml | 4 +- ...ware-auto-efi-nvram-file.x86_64-latest.xml | 4 +- ...-efi-nvram-network-iscsi.x86_64-latest.xml | 4 +- ...to-efi-nvram-network-nbd.x86_64-latest.xml | 4 +- ...ware-auto-efi-nvram-path.x86_64-latest.xml | 4 +- ...ram-template-nonstandard.x86_64-latest.xml | 2 +- ...-auto-efi-nvram-template.x86_64-latest.xml | 4 +- ...efi-riscv64.riscv64-latest.abi-update.args | 4 +- ...-efi-riscv64.riscv64-latest.abi-update.xml | 2 +- ...mware-auto-efi-rw-pflash.x86_64-latest.xml | 2 +- .../firmware-auto-efi-rw.x86_64-latest.xml | 2 +- ...irmware-auto-efi-secboot.x86_64-latest.xml | 4 +- ...irmware-auto-efi-smm-off.x86_64-latest.xml | 4 +- ...mware-auto-efi-stateless.x86_64-latest.xml | 2 +- ...are-auto-efi.x86_64-latest.abi-update.args | 4 +- ...ware-auto-efi.x86_64-latest.abi-update.xml | 2 +- .../firmware-auto-efi.x86_64-latest.xml | 4 +- ...re-manual-bios-stateless.x86_64-latest.xml | 2 +- .../firmware-manual-bios.x86_64-latest.xml | 2 +- ...fi-aarch64-legacy-paths.aarch64-latest.xml | 4 +- ...manual-efi-acpi-aarch64.aarch64-latest.xml | 4 +- ...ware-manual-efi-acpi-q35.x86_64-latest.xml | 4 +- ...ware-manual-efi-features.x86_64-latest.xml | 4 +- ...-loader-path-nonstandard.x86_64-latest.xml | 4 +- ...manual-efi-loader-secure.x86_64-latest.xml | 4 +- ...rolled-keys-legacy-paths.x86_64-latest.xml | 4 +- ...ual-efi-no-enrolled-keys.x86_64-latest.xml | 4 +- ...-no-secboot-legacy-paths.x86_64-latest.xml | 4 +- ...re-manual-efi-no-secboot.x86_64-latest.xml | 4 +- ...nual-efi-noacpi-aarch64.aarch64-latest.xml | 4 +- ...re-manual-efi-nvram-file.x86_64-latest.xml | 4 +- ...-efi-nvram-network-iscsi.x86_64-latest.xml | 4 +- ...al-efi-nvram-network-nbd.x86_64-latest.xml | 4 +- ...ram-template-nonstandard.x86_64-latest.xml | 4 +- ...anual-efi-nvram-template.x86_64-latest.xml | 4 +- ...e-manual-efi-rw-implicit.x86_64-latest.xml | 2 +- ...nual-efi-rw-legacy-paths.x86_64-latest.xml | 2 +- ...nual-efi-rw-modern-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-rw.x86_64-latest.xml | 2 +- ...efi-secboot-legacy-paths.x86_64-latest.xml | 4 +- ...mware-manual-efi-secboot.x86_64-latest.xml | 4 +- ...are-manual-efi-stateless.x86_64-latest.xml | 2 +- .../firmware-manual-efi.x86_64-latest.xml | 4 +- ...f-aarch64-virt-headless.aarch64-latest.xml | 4 +- .../hvf-x86_64-q35-headless.x86_64-latest.xml | 4 +- .../pvpanic-pci-aarch64.aarch64-latest.xml | 4 +- ...-pci-no-address-aarch64.aarch64-latest.xml | 4 +- .../virtio-iommu-aarch64.aarch64-latest.xml | 4 +- tests/qemuxmlconftest.c | 2 +- .../test-disk-positional-parms-full.xml | 2 +- .../test-disk-positional-parms-partial.xml | 2 +- tests/xlconfigdata/test-disk-qed.xml | 2 +- .../xlconfigdata/test-fullvirt-acpi-slic.xml | 2 +- tests/xlconfigdata/test-fullvirt-cpuid.xml | 2 +- ...ullvirt-direct-kernel-boot-bogus-extra.xml | 2 +- ...test-fullvirt-direct-kernel-boot-extra.xml | 2 +- .../test-fullvirt-direct-kernel-boot.xml | 2 +- .../xlconfigdata/test-fullvirt-hpet-timer.xml | 2 +- .../test-fullvirt-hypervisor-features.xml | 2 +- .../test-fullvirt-multi-timer.xml | 2 +- .../test-fullvirt-multiserial.xml | 2 +- tests/xlconfigdata/test-fullvirt-multiusb.xml | 2 +- .../test-fullvirt-nestedhvm-disabled.xml | 2 +- .../xlconfigdata/test-fullvirt-nestedhvm.xml | 2 +- tests/xlconfigdata/test-fullvirt-nohap.xml | 2 +- tests/xlconfigdata/test-fullvirt-ovmf.xml | 2 +- .../test-fullvirt-ovswitch-tagged.xml | 2 +- .../test-fullvirt-ovswitch-trunked.xml | 2 +- tests/xlconfigdata/test-fullvirt-pci.xml | 2 +- .../xlconfigdata/test-fullvirt-tsc-timer.xml | 2 +- tests/xlconfigdata/test-fullvirt-type.xml | 2 +- tests/xlconfigdata/test-fullvirt-vnuma.xml | 2 +- tests/xlconfigdata/test-net-fakemodel.xml | 2 +- tests/xlconfigdata/test-new-disk.xml | 2 +- tests/xlconfigdata/test-qemu-passthrough.xml | 2 +- .../test-rbd-multihost-noauth.xml | 2 +- tests/xlconfigdata/test-spice-features.xml | 2 +- tests/xlconfigdata/test-spice.xml | 2 +- tests/xlconfigdata/test-vif-multi-ip.xml | 2 +- tests/xlconfigdata/test-vif-rate.xml | 2 +- tests/xlconfigdata/test-vif-typename.xml | 2 +- tests/xmconfigdata/test-escape-paths.xml | 2 +- .../test-fullvirt-default-feature.xml | 2 +- .../xmconfigdata/test-fullvirt-force-hpet.xml | 2 +- .../test-fullvirt-force-nohpet.xml | 2 +- .../xmconfigdata/test-fullvirt-localtime.xml | 2 +- .../test-fullvirt-net-netfront.xml | 2 +- .../xmconfigdata/test-fullvirt-new-cdrom.xml | 2 +- tests/xmconfigdata/test-fullvirt-nohap.xml | 2 +- .../test-fullvirt-parallel-tcp.xml | 2 +- .../test-fullvirt-serial-file.xml | 2 +- .../test-fullvirt-serial-null.xml | 2 +- .../test-fullvirt-serial-pipe.xml | 2 +- .../xmconfigdata/test-fullvirt-serial-pty.xml | 2 +- .../test-fullvirt-serial-stdio.xml | 2 +- .../test-fullvirt-serial-tcp-telnet.xml | 2 +- .../xmconfigdata/test-fullvirt-serial-tcp.xml | 2 +- .../xmconfigdata/test-fullvirt-serial-udp.xml | 2 +- .../test-fullvirt-serial-unix.xml | 2 +- tests/xmconfigdata/test-fullvirt-sound.xml | 2 +- tests/xmconfigdata/test-fullvirt-usbmouse.xml | 2 +- .../xmconfigdata/test-fullvirt-usbtablet.xml | 2 +- tests/xmconfigdata/test-fullvirt-utc.xml | 2 +- tests/xmconfigdata/test-no-source-cdrom.xml | 2 +- tests/xmconfigdata/test-pci-dev-syntax.xml | 2 +- tests/xmconfigdata/test-pci-devs.xml | 2 +- 148 files changed, 481 insertions(+), 266 deletions(-) create mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.args delete mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.err create mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.xml -- 2.47.0

'virFileRewrite()' which is used to setup the NVRAM image if it doesn't exist or when it is requested by the user forcibly replaces the destination file by the file it creates. For block devices this overwrites the device node file or the symlink pointing to the device node by a regular file instead of formatting it. As this not only makes the VM fail to start but also breaks user's /dev/ filesystem forbid it for now. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_process.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 0815bffe3c..7a40e09d47 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4609,6 +4609,14 @@ qemuPrepareNVRAM(virQEMUDriver *driver, if (virFileExists(loader->nvram->path) && !reset_nvram) return 0; + /* virFileRewrite() would overwrite the device node-file/symlink rather than + * just write the data to it, thus block-device nvram is not yet supported */ + if (virStorageSourceIsBlockLocal(loader->nvram)) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("creation or formatting of nvram type='block' is not supported")); + return -1; + } + if (!loader->nvramTemplate) { virReportError(VIR_ERR_OPERATION_FAILED, _("unable to find any master var store for loader: %1$s"), -- 2.47.0

'qemuFirmwareEnsureNVRAM' which fills the NVRAM configuration bits which may be missing was basing it's decision to do something based on whether the 'path' field was set. This is insufficient if remote storage is to be considered. Use 'virStorageSourceIsEmpty()' instead as that properly considers remote filesystems and explain why the source is unref'd when the function decides to rewrite the config. The 'firmware-auto-efi-format-nvram-qcow2-network-nbd' is modified to omit filling the 'path' field, which without this fix would result in the nvram to be reset to a local file. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_firmware.c | 11 ++++++----- ...-format-nvram-qcow2-network-nbd.x86_64-latest.args | 2 +- ...i-format-nvram-qcow2-network-nbd.x86_64-latest.xml | 2 +- ...rmware-auto-efi-format-nvram-qcow2-network-nbd.xml | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/qemu/qemu_firmware.c b/src/qemu/qemu_firmware.c index 914f8596bd..5c247b1cf2 100644 --- a/src/qemu/qemu_firmware.c +++ b/src/qemu/qemu_firmware.c @@ -1054,13 +1054,14 @@ qemuFirmwareEnsureNVRAM(virDomainDef *def, if (loader->nvram && !loader->nvram->format) loader->nvram->format = loader->format; - /* If the source already exists and is fully specified, including - * the path, leave it alone */ - if (loader->nvram && loader->nvram->path) - return; + if (loader->nvram) { + /* Nothing to do if a proper NVRAM backend is already configured */ + if (!virStorageSourceIsEmpty(loader->nvram)) + return; - if (loader->nvram) + /* otherwise we want to reset and re-populate the definition */ virObjectUnref(loader->nvram); + } loader->nvram = virStorageSourceNew(); loader->nvram->type = VIR_STORAGE_TYPE_FILE; diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args index 77babdc147..f78b4e7abf 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args @@ -12,7 +12,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ --blockdev '{"driver":"nbd","server":{"type":"inet","host":"example.org","port":"6000"},"export":"bar","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"driver":"nbd","server":{"type":"inet","host":"example.org","port":"6000"},"node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ -blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ -machine pc-i440fx-4.0,usb=off,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel tcg \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.xml index 35865b23c5..cc87905306 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.xml @@ -11,7 +11,7 @@ </firmware> <loader readonly='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2</loader> <nvram type='network' format='qcow2'> - <source protocol='nbd' name='bar'> + <source protocol='nbd'> <host name='example.org' port='6000'/> </source> </nvram> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.xml index 0028bde4d7..d604840edd 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.xml @@ -6,7 +6,7 @@ <os firmware='efi'> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> <nvram type='network' format='qcow2'> - <source protocol='nbd' name='bar'> + <source protocol='nbd'> <host name='example.org' port='6000'/> </source> </nvram> -- 2.47.0

On a Tuesday in 2024, Peter Krempa wrote:
'qemuFirmwareEnsureNVRAM' which fills the NVRAM configuration bits which may be missing was basing it's decision to do something based on whether
its
the 'path' field was set. This is insufficient if remote storage is to be considered.
Use 'virStorageSourceIsEmpty()' instead as that properly considers remote filesystems and explain why the source is unref'd when the function decides to rewrite the config.
The 'firmware-auto-efi-format-nvram-qcow2-network-nbd' is modified to omit filling the 'path' field, which without this fix would result in the nvram to be reset to a local file.
Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_firmware.c | 11 ++++++----- ...-format-nvram-qcow2-network-nbd.x86_64-latest.args | 2 +- ...i-format-nvram-qcow2-network-nbd.x86_64-latest.xml | 2 +- ...rmware-auto-efi-format-nvram-qcow2-network-nbd.xml | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-)
Reviewed-by: Ján Tomko <jtomko@redhat.com> Jano

The qemu driver does support qcow2 images for the firmware and nvram pflash devices, but we do not do the full backing chain setup for them as we don't expect that those images would actually have a backing store. We don't tell that to qemu though which theoretically can lead to qemu probing the backing store from the image itself. We don't want that for now. Deny qemu probing the backing store by installing a "terminator" empty virStorageSource as 'backingStore' for pflash and nvram. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_domain.c | 2 ++ .../firmware-auto-efi-aarch64.aarch64-latest.abi-update.args | 4 ++-- ...auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.args | 4 ++-- .../firmware-auto-efi-format-loader-qcow2.x86_64-latest.args | 4 ++-- ...auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args | 4 ++-- ...rmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.args | 4 ++-- .../firmware-auto-efi-format-nvram-qcow2.x86_64-latest.args | 4 ++-- ...mware-auto-efi-loader-secure.x86_64-latest.abi-update.args | 4 ++-- .../firmware-auto-efi-riscv64.riscv64-latest.abi-update.args | 4 ++-- .../firmware-auto-efi.x86_64-latest.abi-update.args | 4 ++-- 10 files changed, 20 insertions(+), 18 deletions(-) diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 7b702cfc6b..a256775960 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -12069,11 +12069,13 @@ qemuDomainInitializePflashStorageSource(virDomainObj *vm, pflash0->format = def->os.loader->format; pflash0->path = g_strdup(def->os.loader->path); pflash0->readonly = false; + pflash0->backingStore = virStorageSourceNew(); /* terminator */ virTristateBoolToBool(def->os.loader->readonly, &pflash0->readonly); qemuBlockStorageSourceSetFormatNodename(pflash0, g_strdup("libvirt-pflash0-format")); qemuBlockStorageSourceSetStorageNodename(pflash0, g_strdup("libvirt-pflash0-storage")); if (def->os.loader->nvram) { + def->os.loader->nvram->backingStore = virStorageSourceNew(); /* terminator */ if (qemuDomainPrepareStorageSourceBlockdevNodename(NULL, def->os.loader->nvram, "libvirt-pflash1", diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.args b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.args index 30f86aa046..3e20cb4aa5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine virt-4.0,usb=off,gic-version=2,dump-guest-core=off,memory-backend=mach-virt.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel tcg \ -cpu cortex-a15 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.args index e8d7d580f7..2694e0676f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/path/to/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.args index 790fb619e8..2bc7a1b9d5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args index f78b4e7abf..e8e6157f67 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-network-nbd.x86_64-latest.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"nbd","server":{"type":"inet","host":"example.org","port":"6000"},"node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-i440fx-4.0,usb=off,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel tcg \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.args index e8d7d580f7..2694e0676f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/path/to/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.args index 790fb619e8..2bc7a1b9d5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.args b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.args index 790fb619e8..2bc7a1b9d5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.args b/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.args index e10575bf81..f467f71d72 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/riscv/RISCV_VIRT_CODE.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine virt,usb=off,dump-guest-core=off,memory-backend=riscv_virt_board.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=off \ -accel tcg \ -cpu rv64 \ diff --git a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.args b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.args index 790fb619e8..2bc7a1b9d5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.args +++ b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.args @@ -11,9 +11,9 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ -S \ -object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ -blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"qcow2","file":"libvirt-pflash0-storage","backing":null}' \ -blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2","node-name":"libvirt-pflash1-storage","auto-read-only":true,"discard":"unmap"}' \ --blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage"}' \ +-blockdev '{"node-name":"libvirt-pflash1-format","read-only":false,"driver":"qcow2","file":"libvirt-pflash1-storage","backing":null}' \ -machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-format,acpi=on \ -accel kvm \ -cpu qemu64 \ -- 2.47.0

Restructure the code to assign first (as this is simpler to refactor in the future) and avoid mixing implicit value checks with explicit ones by checking for _NONE. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/domain_conf.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 6d7dee7956..4dda943c73 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -17129,15 +17129,16 @@ virDomainLoaderDefParseXMLNvram(virDomainLoaderDef *loader, &format, VIR_STORAGE_FILE_NONE) < 0) { return -1; } - if (format && - format != VIR_STORAGE_FILE_RAW && - format != VIR_STORAGE_FILE_QCOW2) { + src->format = format; + + if (src->format != VIR_STORAGE_FILE_NONE && + src->format != VIR_STORAGE_FILE_RAW && + src->format != VIR_STORAGE_FILE_QCOW2) { virReportError(VIR_ERR_XML_ERROR, _("Unsupported nvram format '%1$s'"), - virStorageFileFormatTypeToString(format)); + virStorageFileFormatTypeToString(src->format)); return -1; } - src->format = format; if ((typePresent = virXMLPropEnum(nvramNode, "type", virStorageTypeFromString, VIR_XML_PROP_NONE, @@ -17219,15 +17220,17 @@ virDomainLoaderDefParseXMLLoader(virDomainLoaderDef *loader, &format, VIR_STORAGE_FILE_NONE) < 0) { return -1; } - if (format && - format != VIR_STORAGE_FILE_RAW && - format != VIR_STORAGE_FILE_QCOW2) { + + loader->format = format; + + if (loader->format != VIR_STORAGE_FILE_NONE && + loader->format != VIR_STORAGE_FILE_RAW && + loader->format != VIR_STORAGE_FILE_QCOW2) { virReportError(VIR_ERR_XML_ERROR, _("Unsupported loader format '%1$s'"), - virStorageFileFormatTypeToString(format)); + virStorageFileFormatTypeToString(loader->format)); return -1; } - loader->format = format; return 0; } -- 2.47.0

The NVRAM template file may be autoselected same as the loader/firmware image. Add a hint that this can occur and also that it doesn't necessarily need to be from the 'qemu.conf' configured files. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- docs/formatdomain.rst | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index d16e00661a..f6d86b26f4 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -268,12 +268,14 @@ harddisk, cdrom, network) determining where to obtain/find the boot image. Some UEFI firmwares may want to use a non-volatile memory to store some variables. In the host, this is represented as a file and the absolute path to the file is stored in this element. Moreover, when the domain is started - up libvirt copies so called master NVRAM store file defined in ``qemu.conf``. - If needed, the ``template`` attribute can be used to per domain override map - of master NVRAM stores from the config file. Note, that for transient domains - if the NVRAM file has been created by libvirt it is left behind and it is - management application's responsibility to save and remove file (if needed to - be persistent). :since:`Since 1.2.8` + up libvirt copies so called master NVRAM store file either selected by the + firmware autoselection process or defined in ``qemu.conf``. + If needed, the ``template`` attribute can be used to override the + automatically chosen NVRAM template. + + Note, that for transient domains if the NVRAM file has been created by + libvirt it is left behind and it is management application's responsibility + to save and remove file (if needed to be persistent). :since:`Since 1.2.8` :since:`Since 8.5.0`, it's possible for the element to have ``type`` attribute (accepts values ``file``, ``block`` and ``network``) in that case the NVRAM -- 2.47.0

Currently the qemu firmware code weirdly depends on the 'format' field of the nvram image itself to do the auto-selection process as well as then uses it to declare the actual type to qemu. As it's not technically required that the template and the on disk image share the type introduce a 'templateFormat' field which will split off from the shared purpose of the type and will be used for the selection and instantiation process, while 'format' will be left for the actual type of the on disk image. This patch introduces the field, adds XML infrastructure as well as plumbs it to the firmware bits. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- docs/formatdomain.rst | 10 ++++--- src/conf/domain_conf.c | 21 ++++++++++++++ src/conf/domain_conf.h | 1 + src/conf/schemas/domaincommon.rng | 17 ++++++++--- src/qemu/qemu_firmware.c | 29 +++++++++++++++---- .../aarch64-virt-graphics.aarch64-latest.xml | 2 +- ...ch64-virt-headless-mmio.aarch64-latest.xml | 2 +- .../aarch64-virt-headless.aarch64-latest.xml | 2 +- ...-efi-aarch64.aarch64-latest.abi-update.xml | 2 +- ...rmware-auto-efi-aarch64.aarch64-latest.xml | 2 +- ...e-auto-efi-enrolled-keys.x86_64-latest.xml | 2 +- ...-loader-qcow2-nvram-path.x86_64-latest.xml | 2 +- ...-efi-format-loader-qcow2.x86_64-latest.xml | 2 +- ...t-loader-raw.aarch64-latest.abi-update.xml | 2 +- ...o-efi-format-loader-raw.aarch64-latest.xml | 2 +- ...-format-nvram-qcow2-path.x86_64-latest.xml | 2 +- ...o-efi-format-nvram-qcow2.x86_64-latest.xml | 2 +- ...auto-efi-loader-insecure.x86_64-latest.xml | 2 +- ...are-auto-efi-loader-path.x86_64-latest.xml | 2 +- ...loader-secure.x86_64-latest.abi-update.xml | 2 +- ...e-auto-efi-loader-secure.x86_64-latest.xml | 2 +- ...ngarch64.loongarch64-latest.abi-update.xml | 2 +- ...uto-efi-loongarch64.loongarch64-latest.xml | 2 +- ...uto-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- ...ware-auto-efi-no-secboot.x86_64-latest.xml | 2 +- ...ware-auto-efi-nvram-file.x86_64-latest.xml | 2 +- ...ware-auto-efi-nvram-path.x86_64-latest.xml | 2 +- ...-auto-efi-nvram-template.x86_64-latest.xml | 2 +- ...-efi-riscv64.riscv64-latest.abi-update.xml | 2 +- ...irmware-auto-efi-secboot.x86_64-latest.xml | 2 +- ...irmware-auto-efi-smm-off.x86_64-latest.xml | 2 +- ...ware-auto-efi.x86_64-latest.abi-update.xml | 2 +- .../firmware-auto-efi.x86_64-latest.xml | 2 +- ...fi-aarch64-legacy-paths.aarch64-latest.xml | 2 +- ...manual-efi-acpi-aarch64.aarch64-latest.xml | 2 +- ...ware-manual-efi-acpi-q35.x86_64-latest.xml | 2 +- ...ware-manual-efi-features.x86_64-latest.xml | 2 +- ...manual-efi-loader-secure.x86_64-latest.xml | 2 +- ...rolled-keys-legacy-paths.x86_64-latest.xml | 2 +- ...ual-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- ...-no-secboot-legacy-paths.x86_64-latest.xml | 2 +- ...re-manual-efi-no-secboot.x86_64-latest.xml | 2 +- ...nual-efi-noacpi-aarch64.aarch64-latest.xml | 2 +- ...re-manual-efi-nvram-file.x86_64-latest.xml | 2 +- ...anual-efi-nvram-template.x86_64-latest.xml | 2 +- ...efi-secboot-legacy-paths.x86_64-latest.xml | 2 +- ...mware-manual-efi-secboot.x86_64-latest.xml | 2 +- .../firmware-manual-efi.x86_64-latest.xml | 2 +- ...f-aarch64-virt-headless.aarch64-latest.xml | 2 +- .../hvf-x86_64-q35-headless.x86_64-latest.xml | 2 +- .../pvpanic-pci-aarch64.aarch64-latest.xml | 2 +- ...-pci-no-address-aarch64.aarch64-latest.xml | 2 +- .../virtio-iommu-aarch64.aarch64-latest.xml | 2 +- 53 files changed, 113 insertions(+), 61 deletions(-) diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index f6d86b26f4..8a4e643c97 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -271,7 +271,10 @@ harddisk, cdrom, network) determining where to obtain/find the boot image. up libvirt copies so called master NVRAM store file either selected by the firmware autoselection process or defined in ``qemu.conf``. If needed, the ``template`` attribute can be used to override the - automatically chosen NVRAM template. + automatically chosen NVRAM template and ``templateFormat`` to specify the + format for the template file (currently supported are ``raw`` and ``qcow2``). + When firmware auto-selection is in use the ``templateFormat`` field reflects + the format of the picked template. :since:`Since 10.10.0 (QEMU only)` Note, that for transient domains if the NVRAM file has been created by libvirt it is left behind and it is management application's responsibility @@ -285,9 +288,8 @@ harddisk, cdrom, network) determining where to obtain/find the boot image. **Note:** ``network`` backed NVRAM the variables are not instantiated from the ``template`` and it's user's responsibility to provide a valid NVRAM image. - This element supports a ``format`` attribute, which has the same semantics - as the attribute of the same name for the ``<loader>`` element. - :since:`Since 9.2.0 (QEMU only)` + This element supports a ``format`` attribute, which specifies the format + of the NVRAM image. :since:`Since 9.2.0 (QEMU only)` It is not valid to provide this element if the loader is marked as stateless. diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 4dda943c73..744bc1ac34 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -17124,6 +17124,22 @@ virDomainLoaderDefParseXMLNvram(virDomainLoaderDef *loader, loader->nvramTemplate = virXMLPropString(nvramNode, "template"); + if (virXMLPropEnumDefault(nvramNode, "templateFormat", + virStorageFileFormatTypeFromString, VIR_XML_PROP_NONE, + &format, VIR_STORAGE_FILE_NONE) < 0) { + return -1; + } + loader->nvramTemplateFormat = format; + + if (loader->nvramTemplateFormat != VIR_STORAGE_FILE_NONE && + loader->nvramTemplateFormat != VIR_STORAGE_FILE_RAW && + loader->nvramTemplateFormat != VIR_STORAGE_FILE_QCOW2) { + virReportError(VIR_ERR_XML_ERROR, + _("Unsupported nvram template format '%1$s'"), + virStorageFileFormatTypeToString(loader->nvramTemplateFormat)); + return -1; + } + if (virXMLPropEnumDefault(nvramNode, "format", virStorageFileFormatTypeFromString, VIR_XML_PROP_NONE, &format, VIR_STORAGE_FILE_NONE) < 0) { @@ -26796,6 +26812,11 @@ virDomainLoaderDefFormatNvram(virBuffer *buf, virBufferEscapeString(&attrBuf, " template='%s'", loader->nvramTemplate); + if (loader->nvramTemplateFormat > VIR_STORAGE_FILE_NONE) { + virBufferAsprintf(&attrBuf, " templateFormat='%s'", + virStorageFileFormatTypeToString(loader->nvramTemplateFormat)); + } + if (loader->nvram) { virStorageSource *src = loader->nvram; diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index a15af4fae3..62de6f1003 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -2337,6 +2337,7 @@ struct _virDomainLoaderDef { virStorageSource *nvram; bool newStyleNVRAM; char *nvramTemplate; /* user override of path to master nvram */ + virStorageFileFormat nvramTemplateFormat; }; virDomainLoaderDef *virDomainLoaderDefNew(void); diff --git a/src/conf/schemas/domaincommon.rng b/src/conf/schemas/domaincommon.rng index efb5f00d77..28797d0122 100644 --- a/src/conf/schemas/domaincommon.rng +++ b/src/conf/schemas/domaincommon.rng @@ -348,6 +348,11 @@ <attribute name="template"> <ref name="absFilePath"/> </attribute> + <optional> + <attribute name="templateFormat"> + <ref name="pflashFormatTypes"/> + </attribute> + </optional> </optional> <optional> <ref name="pflashFormat"/> @@ -7857,12 +7862,16 @@ </element> </define> + <define name="pflashFormatTypes"> + <choice> + <value>raw</value> + <value>qcow2</value> + </choice> + </define> + <define name="pflashFormat"> <attribute name="format"> - <choice> - <value>raw</value> - <value>qcow2</value> - </choice> + <ref name="pflashFormatTypes"/> </attribute> </define> diff --git a/src/qemu/qemu_firmware.c b/src/qemu/qemu_firmware.c index 5c247b1cf2..d9d21b4771 100644 --- a/src/qemu/qemu_firmware.c +++ b/src/qemu/qemu_firmware.c @@ -1065,7 +1065,13 @@ qemuFirmwareEnsureNVRAM(virDomainDef *def, loader->nvram = virStorageSourceNew(); loader->nvram->type = VIR_STORAGE_TYPE_FILE; - loader->nvram->format = loader->format; + + /* The nvram template format should be always present but as a failsafe, + * duplicate the loader format if it is not available. */ + if (loader->nvramTemplateFormat > VIR_STORAGE_FILE_NONE) + loader->nvram->format = loader->nvramTemplateFormat; + else + loader->nvram->format = loader->format; if (loader->nvram->format == VIR_STORAGE_FILE_RAW) { /* The extension used by raw edk2 builds has historically @@ -1422,8 +1428,16 @@ qemuFirmwareEnableFeaturesModern(virDomainDef *def, * We can't create or reset non-local NVRAM files, so filling * in nvramTemplate for those would be misleading */ VIR_FREE(loader->nvramTemplate); - if (!loader->nvram || - (loader->nvram && virStorageSourceIsLocalStorage(loader->nvram))) { + loader->nvramTemplateFormat = VIR_STORAGE_FILE_NONE; + + if (!loader->nvram || virStorageSourceIsLocalStorage(loader->nvram)) { + /* validation when parsing the JSON files ensures that we get + * only 'raw' and 'qcow2' here. Fall back to sharing format with loader */ + if (flash->nvram_template.format) + loader->nvramTemplateFormat = virStorageFileFormatTypeFromString(flash->nvram_template.format); + else + loader->nvramTemplateFormat = loader->format; + loader->nvramTemplate = g_strdup(flash->nvram_template.filename); } } @@ -1661,7 +1675,7 @@ qemuFirmwareFillDomainLegacy(virQEMUDriver *driver, loader->format = VIR_STORAGE_FILE_RAW; /* Only use the default template path if one hasn't been - * provided by the user. + * provided by the user. Assume that the template is in 'raw' format. * * In addition to fully-custom templates, which are a valid * use case, we could simply be in a situation where @@ -1682,8 +1696,13 @@ qemuFirmwareFillDomainLegacy(virQEMUDriver *driver, * In this case, the global default is to have Secure Boot * disabled, but the domain configuration explicitly enables * it, and we shouldn't overrule this choice */ - if (!loader->nvramTemplate) + if (!loader->nvramTemplate) { loader->nvramTemplate = g_strdup(cfg->firmwares[i]->nvram); + loader->nvramTemplateFormat = VIR_STORAGE_FILE_RAW; + } + + if (loader->nvramTemplateFormat == VIR_STORAGE_FILE_NONE) + loader->nvramTemplateFormat = VIR_STORAGE_FILE_RAW; VIR_DEBUG("decided on firmware '%s' template '%s'", loader->path, NULLSTR(loader->nvramTemplate)); diff --git a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml index c7bddf4063..f6cfe2b63c 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml index 1b2d6e70bd..56d40b0a9d 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml index 5029092842..c8fa37a644 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.xml index 0088f3324b..1a9baa8cc1 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash' format='qcow2'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.qcow2</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml index 38c680fabd..c6f3a5fe6b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml index 332d931ba1..729d2d911d 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.xml index 49fdfc5c5f..dd044ac091 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/path/to/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/path/to/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.xml index f4ff7a0fc2..7cdc7eec1f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml index ee22b16831..195b446a0a 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml index 38c680fabd..c6f3a5fe6b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.xml index 49fdfc5c5f..dd044ac091 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/path/to/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/path/to/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.xml index f4ff7a0fc2..7cdc7eec1f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml index 4812c4e600..6690c45940 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' secure='no' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml index 6b8dc886a6..430613f5fd 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.xml index f4ff7a0fc2..7cdc7eec1f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml index 332d931ba1..729d2d911d 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml index 0ae744619f..8ba1bd0f81 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> - <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml index 0ae744619f..8ba1bd0f81 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> - <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml index 9cf30551a9..53381bd10e 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml index 6b8dc886a6..430613f5fd 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml index ada0411fb3..1672edd458 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' type='file'> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file'> <source file='/path/to/guest_VARS.fd'/> </nvram> <boot dev='hd'/> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml index 135744cb7d..94dd6a29b9 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml index 9cf30551a9..53381bd10e 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.xml index d0a60c5bb8..125bd021e7 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash' format='qcow2'>/usr/share/edk2/riscv/RISCV_VIRT_CODE.qcow2</loader> - <nvram template='/usr/share/edk2/riscv/RISCV_VIRT_VARS.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/riscv/RISCV_VIRT_VARS.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <cpu mode='custom' match='exact' check='none'> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml index 332d931ba1..729d2d911d 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml index febaad7eae..c53e9f9692 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.xml index f4ff7a0fc2..7cdc7eec1f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash' format='qcow2'>/usr/share/edk2/ovmf/OVMF_CODE_4M.secboot.qcow2</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS_4M.secboot.qcow2' templateFormat='qcow2' format='qcow2'>/var/lib/libvirt/qemu/nvram/guest_VARS.qcow2</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml index 332d931ba1..729d2d911d 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml index b53f39a72e..c4ab86c675 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='aarch64' machine='virt-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/AAVMF/AAVMF_CODE.fd</loader> - <nvram template='/usr/share/AAVMF/AAVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/AAVMF/AAVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml index 637676d4ed..0dc32d0ce9 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml index a4af4ec25a..e7b764b9b0 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml index 4d6f2f20aa..67d90c4b1c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml index 6c3355a3f6..a8c52c9819 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml index b8c2dfef66..7e2b963537 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml index 083562ab0b..dd69b42726 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml index cfd7a6824f..cd48e5e7b9 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml index a4af4ec25a..e7b764b9b0 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml index 52f9fac842..fd217afb89 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml index ada0411fb3..1672edd458 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' type='file'> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file'> <source file='/path/to/guest_VARS.fd'/> </nvram> <boot dev='hd'/> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml index 4d6f2f20aa..67d90c4b1c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml index 9027123558..e6db577de4 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml index 6c3355a3f6..a8c52c9819 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml index 5bdc9bd4c1..4615cd8db8 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml index dba840237a..f26cce3028 100644 --- a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml index 6c6c1ea8b0..2291362b53 100644 --- a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml index d318aa63a1..5db6e99736 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml index 92a81991e2..eabe7c0b4d 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml index bc6d210458..398ae4e3de 100644 --- a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> -- 2.47.0

As the 'format' field is meant to carry the format of the nvram image we should output it even when the image is 'raw'. Currently this is not a problem but later patches will allow mismatch between the nvram format and loader format (as nothing really technically requires them to be the same and this then could become problem). Modify the condition and update tests. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/domain_conf.c | 3 +-- tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml | 2 +- .../aarch64-virt-headless-mmio.aarch64-latest.xml | 2 +- tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml | 2 +- .../firmware-auto-efi-aarch64.aarch64-latest.xml | 2 +- .../firmware-auto-efi-enrolled-keys.x86_64-latest.xml | 2 +- ...re-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml | 2 +- .../firmware-auto-efi-format-loader-raw.aarch64-latest.xml | 2 +- .../firmware-auto-efi-loader-insecure.x86_64-latest.xml | 2 +- .../firmware-auto-efi-loader-path.x86_64-latest.xml | 2 +- .../firmware-auto-efi-loader-secure.x86_64-latest.xml | 2 +- ...ware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml | 2 +- .../firmware-auto-efi-loongarch64.loongarch64-latest.xml | 2 +- .../firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- .../firmware-auto-efi-no-secboot.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-file.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-path.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-template.x86_64-latest.xml | 2 +- .../firmware-auto-efi-secboot.x86_64-latest.xml | 2 +- .../firmware-auto-efi-smm-off.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml | 2 +- ...firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml | 2 +- .../firmware-manual-efi-acpi-aarch64.aarch64-latest.xml | 2 +- .../firmware-manual-efi-acpi-q35.x86_64-latest.xml | 2 +- .../firmware-manual-efi-features.x86_64-latest.xml | 2 +- ...rmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml | 2 +- .../firmware-manual-efi-loader-secure.x86_64-latest.xml | 2 +- ...-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- ...rmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-no-secboot.x86_64-latest.xml | 2 +- .../firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml | 2 +- .../firmware-manual-efi-nvram-file.x86_64-latest.xml | 2 +- .../firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml | 2 +- .../firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml | 2 +- ...are-manual-efi-nvram-template-nonstandard.x86_64-latest.xml | 2 +- .../firmware-manual-efi-nvram-template.x86_64-latest.xml | 2 +- .../firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-secboot.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml | 2 +- .../hvf-aarch64-virt-headless.aarch64-latest.xml | 2 +- .../qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml | 2 +- .../pvpanic-pci-no-address-aarch64.aarch64-latest.xml | 2 +- tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml | 2 +- 47 files changed, 47 insertions(+), 48 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 744bc1ac34..9d2aeb1086 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -26833,8 +26833,7 @@ virDomainLoaderDefFormatNvram(virBuffer *buf, return -1; } - if (src->format && - src->format != VIR_STORAGE_FILE_RAW) { + if (src->format != VIR_STORAGE_FILE_NONE) { virBufferEscapeString(&attrBuf, " format='%s'", virStorageFileFormatTypeToString(src->format)); } diff --git a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml index f6cfe2b63c..31a5165fc3 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml index 56d40b0a9d..dc2bce05dc 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml index c8fa37a644..24edcc5ab3 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml @@ -16,7 +16,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml index c6f3a5fe6b..e07881f8cf 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml index 729d2d911d..e454303158 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml index 195b446a0a..44ef2c89f9 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml index c6f3a5fe6b..e07881f8cf 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml index 6690c45940..f3c93e648a 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' secure='no' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml index 430613f5fd..9ad97a9c37 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml index 729d2d911d..e454303158 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml index 8ba1bd0f81..6137d3448b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> - <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml index 8ba1bd0f81..6137d3448b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> - <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml index 53381bd10e..875943f097 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml index 430613f5fd..9ad97a9c37 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml index 1672edd458..317868a136 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file'> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file' format='raw'> <source file='/path/to/guest_VARS.fd'/> </nvram> <boot dev='hd'/> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml index 23ff713347..da5816f3cd 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram type='network'> + <nvram type='network' format='raw'> <source protocol='iscsi' name='iqn.2013-07.com.example:iscsi-nopool'> <host name='example.com' port='6000'/> <auth username='myname'> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml index a318069d1d..3fc9b5f79c 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram type='network'> + <nvram type='network' format='raw'> <source protocol='nbd' name='bar'> <host name='example.org' port='6000'/> </source> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml index 94dd6a29b9..d0eea64666 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml index 53381bd10e..875943f097 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml index 729d2d911d..e454303158 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml index c53e9f9692..5fc4a8c5cc 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml index 729d2d911d..e454303158 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml index c4ab86c675..293ffb95bd 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='aarch64' machine='virt-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/AAVMF/AAVMF_CODE.fd</loader> - <nvram template='/usr/share/AAVMF/AAVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/AAVMF/AAVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml index 0dc32d0ce9..8dc07ab101 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml index e7b764b9b0..ee3f0c5331 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml index 67d90c4b1c..05cd789c27 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml index 039c485706..09a0ef382e 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/path/to/OVMF_CODE.fd</loader> - <nvram template='/path/to/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/path/to/OVMF_VARS.fd' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml index a8c52c9819..d14adaea21 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml index 7e2b963537..7258679199 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml index dd69b42726..b1b3a268cb 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml index cd48e5e7b9..f89b371a4c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml index e7b764b9b0..ee3f0c5331 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml index fd217afb89..4e14737696 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/path/to/guest_VARS.raw</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml index 1672edd458..317868a136 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file'> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file' format='raw'> <source file='/path/to/guest_VARS.fd'/> </nvram> <boot dev='hd'/> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml index 23ff713347..da5816f3cd 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram type='network'> + <nvram type='network' format='raw'> <source protocol='iscsi' name='iqn.2013-07.com.example:iscsi-nopool'> <host name='example.com' port='6000'/> <auth username='myname'> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml index a318069d1d..3fc9b5f79c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram type='network'> + <nvram type='network' format='raw'> <source protocol='nbd' name='bar'> <host name='example.org' port='6000'/> </source> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml index 5433650516..f8de279178 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/path/to/OVMF_VARS.fd'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/path/to/OVMF_VARS.fd' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml index 67d90c4b1c..05cd789c27 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml index e6db577de4..72dfc6feb1 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml @@ -7,7 +7,7 @@ <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/OVMF/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/OVMF/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml index a8c52c9819..d14adaea21 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml index 4615cd8db8..e92738ef10 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw'>/path/to/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml index f26cce3028..375879256e 100644 --- a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml index 2291362b53..316d6bd9ea 100644 --- a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='yes' name='secure-boot'/> </firmware> <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> - <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml index 5db6e99736..9da2f68224 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml index eabe7c0b4d..5296fbb414 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml index 398ae4e3de..de5e747cf2 100644 --- a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml @@ -11,7 +11,7 @@ <feature enabled='no' name='secure-boot'/> </firmware> <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> - <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> <features> -- 2.47.0

The code historically skipped the 'format' field for 'raw' images as we didn't output it when no format support was present. Stop misleading and output the format also for 'raw' images. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/domain_conf.c | 5 ++--- .../qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml | 2 +- .../aarch64-virt-headless-mmio.aarch64-latest.xml | 2 +- .../qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml | 2 +- .../firmware-auto-bios-stateless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-auto-bios.x86_64-latest.xml | 2 +- .../firmware-auto-efi-aarch64.aarch64-latest.xml | 2 +- .../firmware-auto-efi-enrolled-keys.x86_64-latest.xml | 2 +- ...-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml | 2 +- .../firmware-auto-efi-format-loader-raw.aarch64-latest.xml | 2 +- .../firmware-auto-efi-loader-insecure.x86_64-latest.xml | 2 +- ...rmware-auto-efi-loader-path-nonstandard.x86_64-latest.xml | 2 +- .../firmware-auto-efi-loader-path.x86_64-latest.xml | 2 +- .../firmware-auto-efi-loader-secure.x86_64-latest.xml | 2 +- ...re-auto-efi-loongarch64.loongarch64-latest.abi-update.xml | 2 +- .../firmware-auto-efi-loongarch64.loongarch64-latest.xml | 2 +- .../firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- .../firmware-auto-efi-no-secboot.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-file.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-path.x86_64-latest.xml | 2 +- ...are-auto-efi-nvram-template-nonstandard.x86_64-latest.xml | 2 +- .../firmware-auto-efi-nvram-template.x86_64-latest.xml | 2 +- .../firmware-auto-efi-rw-pflash.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-auto-efi-rw.x86_64-latest.xml | 2 +- .../firmware-auto-efi-secboot.x86_64-latest.xml | 2 +- .../firmware-auto-efi-smm-off.x86_64-latest.xml | 2 +- .../firmware-auto-efi-stateless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml | 2 +- .../firmware-manual-bios-stateless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-manual-bios.x86_64-latest.xml | 2 +- ...rmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml | 2 +- .../firmware-manual-efi-acpi-aarch64.aarch64-latest.xml | 2 +- .../firmware-manual-efi-acpi-q35.x86_64-latest.xml | 2 +- .../firmware-manual-efi-features.x86_64-latest.xml | 2 +- ...ware-manual-efi-loader-path-nonstandard.x86_64-latest.xml | 2 +- .../firmware-manual-efi-loader-secure.x86_64-latest.xml | 2 +- ...anual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml | 2 +- ...ware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-no-secboot.x86_64-latest.xml | 2 +- .../firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml | 2 +- .../firmware-manual-efi-nvram-file.x86_64-latest.xml | 2 +- ...firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml | 2 +- .../firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml | 2 +- ...e-manual-efi-nvram-template-nonstandard.x86_64-latest.xml | 2 +- .../firmware-manual-efi-nvram-template.x86_64-latest.xml | 2 +- .../firmware-manual-efi-rw-implicit.x86_64-latest.xml | 2 +- .../firmware-manual-efi-rw-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-rw-modern-paths.x86_64-latest.xml | 2 +- .../qemuxmlconfdata/firmware-manual-efi-rw.x86_64-latest.xml | 2 +- ...irmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml | 2 +- .../firmware-manual-efi-secboot.x86_64-latest.xml | 2 +- .../firmware-manual-efi-stateless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml | 2 +- .../hvf-aarch64-virt-headless.aarch64-latest.xml | 2 +- .../hvf-x86_64-q35-headless.x86_64-latest.xml | 2 +- tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml | 2 +- .../pvpanic-pci-no-address-aarch64.aarch64-latest.xml | 2 +- .../qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml | 2 +- tests/xlconfigdata/test-disk-positional-parms-full.xml | 2 +- tests/xlconfigdata/test-disk-positional-parms-partial.xml | 2 +- tests/xlconfigdata/test-disk-qed.xml | 2 +- tests/xlconfigdata/test-fullvirt-acpi-slic.xml | 2 +- tests/xlconfigdata/test-fullvirt-cpuid.xml | 2 +- .../test-fullvirt-direct-kernel-boot-bogus-extra.xml | 2 +- .../xlconfigdata/test-fullvirt-direct-kernel-boot-extra.xml | 2 +- tests/xlconfigdata/test-fullvirt-direct-kernel-boot.xml | 2 +- tests/xlconfigdata/test-fullvirt-hpet-timer.xml | 2 +- tests/xlconfigdata/test-fullvirt-hypervisor-features.xml | 2 +- tests/xlconfigdata/test-fullvirt-multi-timer.xml | 2 +- tests/xlconfigdata/test-fullvirt-multiserial.xml | 2 +- tests/xlconfigdata/test-fullvirt-multiusb.xml | 2 +- tests/xlconfigdata/test-fullvirt-nestedhvm-disabled.xml | 2 +- tests/xlconfigdata/test-fullvirt-nestedhvm.xml | 2 +- tests/xlconfigdata/test-fullvirt-nohap.xml | 2 +- tests/xlconfigdata/test-fullvirt-ovmf.xml | 2 +- tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml | 2 +- tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml | 2 +- tests/xlconfigdata/test-fullvirt-pci.xml | 2 +- tests/xlconfigdata/test-fullvirt-tsc-timer.xml | 2 +- tests/xlconfigdata/test-fullvirt-type.xml | 2 +- tests/xlconfigdata/test-fullvirt-vnuma.xml | 2 +- tests/xlconfigdata/test-net-fakemodel.xml | 2 +- tests/xlconfigdata/test-new-disk.xml | 2 +- tests/xlconfigdata/test-qemu-passthrough.xml | 2 +- tests/xlconfigdata/test-rbd-multihost-noauth.xml | 2 +- tests/xlconfigdata/test-spice-features.xml | 2 +- tests/xlconfigdata/test-spice.xml | 2 +- tests/xlconfigdata/test-vif-multi-ip.xml | 2 +- tests/xlconfigdata/test-vif-rate.xml | 2 +- tests/xlconfigdata/test-vif-typename.xml | 2 +- tests/xmconfigdata/test-escape-paths.xml | 2 +- tests/xmconfigdata/test-fullvirt-default-feature.xml | 2 +- tests/xmconfigdata/test-fullvirt-force-hpet.xml | 2 +- tests/xmconfigdata/test-fullvirt-force-nohpet.xml | 2 +- tests/xmconfigdata/test-fullvirt-localtime.xml | 2 +- tests/xmconfigdata/test-fullvirt-net-netfront.xml | 2 +- tests/xmconfigdata/test-fullvirt-new-cdrom.xml | 2 +- tests/xmconfigdata/test-fullvirt-nohap.xml | 2 +- tests/xmconfigdata/test-fullvirt-parallel-tcp.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-file.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-null.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-pipe.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-pty.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-stdio.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-tcp.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-udp.xml | 2 +- tests/xmconfigdata/test-fullvirt-serial-unix.xml | 2 +- tests/xmconfigdata/test-fullvirt-sound.xml | 2 +- tests/xmconfigdata/test-fullvirt-usbmouse.xml | 2 +- tests/xmconfigdata/test-fullvirt-usbtablet.xml | 2 +- tests/xmconfigdata/test-fullvirt-utc.xml | 2 +- tests/xmconfigdata/test-no-source-cdrom.xml | 2 +- tests/xmconfigdata/test-pci-dev-syntax.xml | 2 +- tests/xmconfigdata/test-pci-devs.xml | 2 +- 118 files changed, 119 insertions(+), 120 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 9d2aeb1086..1439c6bdac 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -26871,9 +26871,8 @@ virDomainLoaderDefFormat(virBuffer *buf, virTristateBoolTypeToString(loader->stateless)); } - if (loader->format && - loader->format != VIR_STORAGE_FILE_RAW) { - virBufferEscapeString(&loaderAttrBuf, " format='%s'", + if (loader->format > VIR_STORAGE_FILE_NONE) { + virBufferAsprintf(&loaderAttrBuf, " format='%s'", virStorageFileFormatTypeToString(loader->format)); } diff --git a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml index 31a5165fc3..6f3287d52d 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml @@ -15,7 +15,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml index dc2bce05dc..295c14c828 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml @@ -15,7 +15,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml index 24edcc5ab3..0b96654010 100644 --- a/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml @@ -15,7 +15,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-bios-stateless.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-bios-stateless.x86_64-latest.xml index e69f8c01d0..31b83b5593 100644 --- a/tests/qemuxmlconfdata/firmware-auto-bios-stateless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-bios-stateless.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader type='rom' stateless='yes'>/usr/share/seabios/bios-256k.bin</loader> + <loader type='rom' stateless='yes' format='raw'>/usr/share/seabios/bios-256k.bin</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-bios.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-bios.x86_64-latest.xml index ffff5a79e2..d7471baa61 100644 --- a/tests/qemuxmlconfdata/firmware-auto-bios.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-bios.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader type='rom'>/usr/share/seabios/bios-256k.bin</loader> + <loader type='rom' format='raw'>/usr/share/seabios/bios-256k.bin</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml index e07881f8cf..0ee421fe6f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml index e454303158..79ab55751b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml index 44ef2c89f9..f95e2d2465 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml index e07881f8cf..0ee421fe6f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml index f3c93e648a..28da16a5b4 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='no' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' secure='no' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path-nonstandard.x86_64-latest.xml index f68cddf8df..1f09253a16 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path-nonstandard.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os firmware='efi'> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/path/to/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/path/to/OVMF_CODE.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml index 9ad97a9c37..e85b1be965 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml index e454303158..79ab55751b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml index 6137d3448b..c69d053cec 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml index 6137d3448b..c69d053cec 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/loongarch64/QEMU_EFI.fd</loader> <nvram template='/usr/share/edk2/loongarch64/QEMU_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml index 875943f097..33134d405f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml index 9ad97a9c37..e85b1be965 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml index 317868a136..dac07adb3e 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file' format='raw'> <source file='/path/to/guest_VARS.fd'/> </nvram> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml index da5816f3cd..b21932d1b8 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-iscsi.x86_64-latest.xml @@ -9,7 +9,7 @@ <firmware> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram type='network' format='raw'> <source protocol='iscsi' name='iqn.2013-07.com.example:iscsi-nopool'> <host name='example.com' port='6000'/> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml index 3fc9b5f79c..6418ff6c3c 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-network-nbd.x86_64-latest.xml @@ -9,7 +9,7 @@ <firmware> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram type='network' format='raw'> <source protocol='nbd' name='bar'> <host name='example.org' port='6000'/> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml index d0eea64666..7f680e9fc5 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template-nonstandard.x86_64-latest.xml index 6dcf5f23f7..fbb51f1734 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template-nonstandard.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os firmware='efi'> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/path/to/OVMF_VARS.fd'/> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml index 875943f097..33134d405f 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-rw-pflash.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-rw-pflash.x86_64-latest.xml index 3ced80f78b..c9bca900af 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-rw-pflash.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-rw-pflash.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os firmware='efi'> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='no' type='pflash'/> + <loader readonly='no' type='pflash' format='raw'/> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-rw.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-rw.x86_64-latest.xml index c2d0c33a0b..4e744b69a3 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-rw.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-rw.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os firmware='efi'> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='no'/> + <loader readonly='no' format='raw'/> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml index e454303158..79ab55751b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml index 5fc4a8c5cc..c36c2b7b9d 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-stateless.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-stateless.x86_64-latest.xml index 006d338b3e..aa94bb32db 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-stateless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-stateless.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash' stateless='yes'>/usr/share/edk2/ovmf/OVMF.amdsev.fd</loader> + <loader readonly='yes' type='pflash' stateless='yes' format='raw'>/usr/share/edk2/ovmf/OVMF.amdsev.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml index e454303158..79ab55751b 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-bios-stateless.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-bios-stateless.x86_64-latest.xml index 5787482b36..4f7bd872f6 100644 --- a/tests/qemuxmlconfdata/firmware-manual-bios-stateless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-bios-stateless.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> - <loader type='rom' stateless='yes'>/usr/share/seabios/bios.bin</loader> + <loader type='rom' stateless='yes' format='raw'>/usr/share/seabios/bios.bin</loader> <boot dev='hd'/> </os> <cpu mode='custom' match='exact' check='none'> diff --git a/tests/qemuxmlconfdata/firmware-manual-bios.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-bios.x86_64-latest.xml index 56932d7fee..040c31b5b9 100644 --- a/tests/qemuxmlconfdata/firmware-manual-bios.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-bios.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> - <loader type='rom'>/usr/share/seabios/bios.bin</loader> + <loader type='rom' format='raw'>/usr/share/seabios/bios.bin</loader> <boot dev='hd'/> </os> <cpu mode='custom' match='exact' check='none'> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml index 293ffb95bd..2e5c4fe584 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='aarch64' machine='virt-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/usr/share/AAVMF/AAVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/AAVMF/AAVMF_CODE.fd</loader> <nvram template='/usr/share/AAVMF/AAVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml index 8dc07ab101..392601c167 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml index ee3f0c5331..0a4367ea75 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml index 05cd789c27..5f958ec758 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml index 09a0ef382e..783a82336c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-loader-path-nonstandard.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/path/to/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/path/to/OVMF_CODE.fd</loader> <nvram template='/path/to/OVMF_VARS.fd' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml index d14adaea21..3465be2eb0 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml index 7258679199..76a9b62f19 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml index b1b3a268cb..97515f917e 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml index f89b371a4c..d2d9777284 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/OVMF/OVMF_CODE.fd</loader> <nvram template='/usr/share/OVMF/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml index ee3f0c5331..0a4367ea75 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml index 4e14737696..e8289954e3 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/path/to/guest_VARS.raw</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml index 317868a136..dac07adb3e 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' type='file' format='raw'> <source file='/path/to/guest_VARS.fd'/> </nvram> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml index da5816f3cd..b21932d1b8 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-iscsi.x86_64-latest.xml @@ -9,7 +9,7 @@ <firmware> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram type='network' format='raw'> <source protocol='iscsi' name='iqn.2013-07.com.example:iscsi-nopool'> <host name='example.com' port='6000'/> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml index 3fc9b5f79c..6418ff6c3c 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-network-nbd.x86_64-latest.xml @@ -9,7 +9,7 @@ <firmware> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram type='network' format='raw'> <source protocol='nbd' name='bar'> <host name='example.org' port='6000'/> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml index f8de279178..6c83568f62 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template-nonstandard.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/path/to/OVMF_VARS.fd' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml index 05cd789c27..5f958ec758 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-rw-implicit.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-rw-implicit.x86_64-latest.xml index 3411e337e8..919c9030f0 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-rw-implicit.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-rw-implicit.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> - <loader type='pflash'>/path/to/guest_BOTH.fd</loader> + <loader type='pflash' format='raw'>/path/to/guest_BOTH.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-rw-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-rw-legacy-paths.x86_64-latest.xml index c5baedc42c..eaf8ce41bb 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-rw-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-rw-legacy-paths.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='no' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader> + <loader readonly='no' type='pflash' format='raw'>/usr/share/OVMF/OVMF_CODE.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-rw-modern-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-rw-modern-paths.x86_64-latest.xml index 0d755a4306..38c515c647 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-rw-modern-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-rw-modern-paths.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='no' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='no' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-rw.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-rw.x86_64-latest.xml index 94ceb88b49..5ffac0e811 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-rw.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-rw.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> - <loader readonly='no' type='pflash'>/path/to/guest_BOTH.fd</loader> + <loader readonly='no' type='pflash' format='raw'>/path/to/guest_BOTH.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml index 72dfc6feb1..10e1450db6 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/OVMF/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/OVMF/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml index d14adaea21..3465be2eb0 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi-stateless.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi-stateless.x86_64-latest.xml index e4ed6a154b..f55f17b09a 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi-stateless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi-stateless.x86_64-latest.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> - <loader readonly='yes' type='pflash' stateless='yes'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' stateless='yes' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml index e92738ef10..7c92aeb391 100644 --- a/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.fd' templateFormat='raw' format='raw'>/path/to/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml index 375879256e..6399756654 100644 --- a/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml index 316d6bd9ea..55ff2783f9 100644 --- a/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml +++ b/tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='yes' name='enrolled-keys'/> <feature enabled='yes' name='secure-boot'/> </firmware> - <loader readonly='yes' secure='yes' type='pflash'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/test_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml index 9da2f68224..5cbb6ad8d4 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml index 5296fbb414..cc77b9579f 100644 --- a/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml index de5e747cf2..614cd2c5f5 100644 --- a/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml +++ b/tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml @@ -10,7 +10,7 @@ <feature enabled='no' name='enrolled-keys'/> <feature enabled='no' name='secure-boot'/> </firmware> - <loader readonly='yes' type='pflash'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/edk2/aarch64/QEMU_EFI-silent-pflash.raw</loader> <nvram template='/usr/share/edk2/aarch64/vars-template-pflash.raw' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> <boot dev='hd'/> </os> diff --git a/tests/xlconfigdata/test-disk-positional-parms-full.xml b/tests/xlconfigdata/test-disk-positional-parms-full.xml index 8961ad5d82..47c0a59d90 100644 --- a/tests/xlconfigdata/test-disk-positional-parms-full.xml +++ b/tests/xlconfigdata/test-disk-positional-parms-full.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-disk-positional-parms-partial.xml b/tests/xlconfigdata/test-disk-positional-parms-partial.xml index 308011b015..e38f553af7 100644 --- a/tests/xlconfigdata/test-disk-positional-parms-partial.xml +++ b/tests/xlconfigdata/test-disk-positional-parms-partial.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-disk-qed.xml b/tests/xlconfigdata/test-disk-qed.xml index 8e782c19c6..c825456a1b 100644 --- a/tests/xlconfigdata/test-disk-qed.xml +++ b/tests/xlconfigdata/test-disk-qed.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-acpi-slic.xml b/tests/xlconfigdata/test-fullvirt-acpi-slic.xml index 9727422f62..366d877624 100644 --- a/tests/xlconfigdata/test-fullvirt-acpi-slic.xml +++ b/tests/xlconfigdata/test-fullvirt-acpi-slic.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <acpi> <table type='slic'>/sys/firmware/acpi/tables/SLIC</table> </acpi> diff --git a/tests/xlconfigdata/test-fullvirt-cpuid.xml b/tests/xlconfigdata/test-fullvirt-cpuid.xml index e953e76303..20ef789b60 100644 --- a/tests/xlconfigdata/test-fullvirt-cpuid.xml +++ b/tests/xlconfigdata/test-fullvirt-cpuid.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.xml b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.xml index 41b82387ee..cc32cdd550 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.xml +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <kernel>/tmp/vmlinuz</kernel> <initrd>/tmp/initrd</initrd> <cmdline>ignore_loglvl</cmdline> diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.xml b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.xml index 41b82387ee..cc32cdd550 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.xml +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <kernel>/tmp/vmlinuz</kernel> <initrd>/tmp/initrd</initrd> <cmdline>ignore_loglvl</cmdline> diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.xml b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.xml index 41b82387ee..cc32cdd550 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.xml +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <kernel>/tmp/vmlinuz</kernel> <initrd>/tmp/initrd</initrd> <cmdline>ignore_loglvl</cmdline> diff --git a/tests/xlconfigdata/test-fullvirt-hpet-timer.xml b/tests/xlconfigdata/test-fullvirt-hpet-timer.xml index 51b6994312..3ea80b22e0 100644 --- a/tests/xlconfigdata/test-fullvirt-hpet-timer.xml +++ b/tests/xlconfigdata/test-fullvirt-hpet-timer.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-hypervisor-features.xml b/tests/xlconfigdata/test-fullvirt-hypervisor-features.xml index c36290bb6a..fcdbc4763f 100644 --- a/tests/xlconfigdata/test-fullvirt-hypervisor-features.xml +++ b/tests/xlconfigdata/test-fullvirt-hypervisor-features.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-multi-timer.xml b/tests/xlconfigdata/test-fullvirt-multi-timer.xml index 5c9e526fa7..d52773f60c 100644 --- a/tests/xlconfigdata/test-fullvirt-multi-timer.xml +++ b/tests/xlconfigdata/test-fullvirt-multi-timer.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-multiserial.xml b/tests/xlconfigdata/test-fullvirt-multiserial.xml index d099a182c8..90c77e0893 100644 --- a/tests/xlconfigdata/test-fullvirt-multiserial.xml +++ b/tests/xlconfigdata/test-fullvirt-multiserial.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-multiusb.xml b/tests/xlconfigdata/test-fullvirt-multiusb.xml index 85f36cf9ed..a5112c659c 100644 --- a/tests/xlconfigdata/test-fullvirt-multiusb.xml +++ b/tests/xlconfigdata/test-fullvirt-multiusb.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-nestedhvm-disabled.xml b/tests/xlconfigdata/test-fullvirt-nestedhvm-disabled.xml index 439e3b119c..f3057514fa 100644 --- a/tests/xlconfigdata/test-fullvirt-nestedhvm-disabled.xml +++ b/tests/xlconfigdata/test-fullvirt-nestedhvm-disabled.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-nestedhvm.xml b/tests/xlconfigdata/test-fullvirt-nestedhvm.xml index f8412ffce7..318d7c746c 100644 --- a/tests/xlconfigdata/test-fullvirt-nestedhvm.xml +++ b/tests/xlconfigdata/test-fullvirt-nestedhvm.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-nohap.xml b/tests/xlconfigdata/test-fullvirt-nohap.xml index 8167ea0133..37d0919d49 100644 --- a/tests/xlconfigdata/test-fullvirt-nohap.xml +++ b/tests/xlconfigdata/test-fullvirt-nohap.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-ovmf.xml b/tests/xlconfigdata/test-fullvirt-ovmf.xml index da3954dba9..b71b3e7687 100644 --- a/tests/xlconfigdata/test-fullvirt-ovmf.xml +++ b/tests/xlconfigdata/test-fullvirt-ovmf.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x86_64-xen.bin</loader> + <loader readonly='yes' type='pflash' format='raw'>/usr/share/qemu/ovmf-x86_64-xen.bin</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml b/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml index 3256f616db..561c5f444c 100644 --- a/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml +++ b/tests/xlconfigdata/test-fullvirt-ovswitch-tagged.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>8</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml b/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml index 46c0a0f8f8..1d531cec99 100644 --- a/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml +++ b/tests/xlconfigdata/test-fullvirt-ovswitch-trunked.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>8</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-pci.xml b/tests/xlconfigdata/test-fullvirt-pci.xml index 6826d14b9e..71fc0b7de8 100644 --- a/tests/xlconfigdata/test-fullvirt-pci.xml +++ b/tests/xlconfigdata/test-fullvirt-pci.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-tsc-timer.xml b/tests/xlconfigdata/test-fullvirt-tsc-timer.xml index f048486380..52518c1329 100644 --- a/tests/xlconfigdata/test-fullvirt-tsc-timer.xml +++ b/tests/xlconfigdata/test-fullvirt-tsc-timer.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-type.xml b/tests/xlconfigdata/test-fullvirt-type.xml index 6d79300fa9..b094fb2505 100644 --- a/tests/xlconfigdata/test-fullvirt-type.xml +++ b/tests/xlconfigdata/test-fullvirt-type.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-fullvirt-vnuma.xml b/tests/xlconfigdata/test-fullvirt-vnuma.xml index 99092817de..c474c33600 100644 --- a/tests/xlconfigdata/test-fullvirt-vnuma.xml +++ b/tests/xlconfigdata/test-fullvirt-vnuma.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>8</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-net-fakemodel.xml b/tests/xlconfigdata/test-net-fakemodel.xml index 031af99cb8..4ba1de61e4 100644 --- a/tests/xlconfigdata/test-net-fakemodel.xml +++ b/tests/xlconfigdata/test-net-fakemodel.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-new-disk.xml b/tests/xlconfigdata/test-new-disk.xml index 8961ad5d82..47c0a59d90 100644 --- a/tests/xlconfigdata/test-new-disk.xml +++ b/tests/xlconfigdata/test-new-disk.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-qemu-passthrough.xml b/tests/xlconfigdata/test-qemu-passthrough.xml index 5de35143c0..4794851c02 100644 --- a/tests/xlconfigdata/test-qemu-passthrough.xml +++ b/tests/xlconfigdata/test-qemu-passthrough.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-rbd-multihost-noauth.xml b/tests/xlconfigdata/test-rbd-multihost-noauth.xml index df26f6cf02..59581e5f67 100644 --- a/tests/xlconfigdata/test-rbd-multihost-noauth.xml +++ b/tests/xlconfigdata/test-rbd-multihost-noauth.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-spice-features.xml b/tests/xlconfigdata/test-spice-features.xml index 11b5f0f665..b762faff20 100644 --- a/tests/xlconfigdata/test-spice-features.xml +++ b/tests/xlconfigdata/test-spice-features.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-spice.xml b/tests/xlconfigdata/test-spice.xml index 745ae3b5c5..ffd64d27b7 100644 --- a/tests/xlconfigdata/test-spice.xml +++ b/tests/xlconfigdata/test-spice.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-vif-multi-ip.xml b/tests/xlconfigdata/test-vif-multi-ip.xml index 9498518263..f494362440 100644 --- a/tests/xlconfigdata/test-vif-multi-ip.xml +++ b/tests/xlconfigdata/test-vif-multi-ip.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-vif-rate.xml b/tests/xlconfigdata/test-vif-rate.xml index 037d410d13..052f9c074a 100644 --- a/tests/xlconfigdata/test-vif-rate.xml +++ b/tests/xlconfigdata/test-vif-rate.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xlconfigdata/test-vif-typename.xml b/tests/xlconfigdata/test-vif-typename.xml index d08eff7299..38e0227f84 100644 --- a/tests/xlconfigdata/test-vif-typename.xml +++ b/tests/xlconfigdata/test-vif-typename.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-escape-paths.xml b/tests/xmconfigdata/test-escape-paths.xml index 57930b6913..654c08009d 100644 --- a/tests/xmconfigdata/test-escape-paths.xml +++ b/tests/xmconfigdata/test-escape-paths.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader&test</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader&test</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-default-feature.xml b/tests/xmconfigdata/test-fullvirt-default-feature.xml index ba8d4299a1..dffd2665f2 100644 --- a/tests/xmconfigdata/test-fullvirt-default-feature.xml +++ b/tests/xmconfigdata/test-fullvirt-default-feature.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-force-hpet.xml b/tests/xmconfigdata/test-fullvirt-force-hpet.xml index ba8d4299a1..dffd2665f2 100644 --- a/tests/xmconfigdata/test-fullvirt-force-hpet.xml +++ b/tests/xmconfigdata/test-fullvirt-force-hpet.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-force-nohpet.xml b/tests/xmconfigdata/test-fullvirt-force-nohpet.xml index eaf5206227..286377e32a 100644 --- a/tests/xmconfigdata/test-fullvirt-force-nohpet.xml +++ b/tests/xmconfigdata/test-fullvirt-force-nohpet.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-localtime.xml b/tests/xmconfigdata/test-fullvirt-localtime.xml index 5574405002..895df986e7 100644 --- a/tests/xmconfigdata/test-fullvirt-localtime.xml +++ b/tests/xmconfigdata/test-fullvirt-localtime.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-net-netfront.xml b/tests/xmconfigdata/test-fullvirt-net-netfront.xml index fb8d0e017e..4c824ae883 100644 --- a/tests/xmconfigdata/test-fullvirt-net-netfront.xml +++ b/tests/xmconfigdata/test-fullvirt-net-netfront.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-new-cdrom.xml b/tests/xmconfigdata/test-fullvirt-new-cdrom.xml index 9e44651a4d..5d52a55184 100644 --- a/tests/xmconfigdata/test-fullvirt-new-cdrom.xml +++ b/tests/xmconfigdata/test-fullvirt-new-cdrom.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-nohap.xml b/tests/xmconfigdata/test-fullvirt-nohap.xml index 82caa1e842..b5c1452e77 100644 --- a/tests/xmconfigdata/test-fullvirt-nohap.xml +++ b/tests/xmconfigdata/test-fullvirt-nohap.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml b/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml index c96079c5ba..8074abe3e3 100644 --- a/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml +++ b/tests/xmconfigdata/test-fullvirt-parallel-tcp.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-file.xml b/tests/xmconfigdata/test-fullvirt-serial-file.xml index 69b4958f6e..b9f0d6a728 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-file.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-file.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-null.xml b/tests/xmconfigdata/test-fullvirt-serial-null.xml index 3d07c394f8..955bc30951 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-null.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-null.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-pipe.xml b/tests/xmconfigdata/test-fullvirt-serial-pipe.xml index 617db43dd1..b426cabef4 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-pipe.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-pipe.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-pty.xml b/tests/xmconfigdata/test-fullvirt-serial-pty.xml index e6bc2908a4..5e0dfe84e8 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-pty.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-pty.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-stdio.xml b/tests/xmconfigdata/test-fullvirt-serial-stdio.xml index 9d0c2ebcc1..f3ef1e60b9 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-stdio.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-stdio.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml b/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml index 372c859853..2747b2bf44 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-tcp-telnet.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-tcp.xml b/tests/xmconfigdata/test-fullvirt-serial-tcp.xml index 774fe59362..c29e5f96db 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-tcp.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-tcp.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-udp.xml b/tests/xmconfigdata/test-fullvirt-serial-udp.xml index 0f2450a7dd..b2975d88ba 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-udp.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-udp.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-serial-unix.xml b/tests/xmconfigdata/test-fullvirt-serial-unix.xml index 2cb8b0049f..1019f0b59d 100644 --- a/tests/xmconfigdata/test-fullvirt-serial-unix.xml +++ b/tests/xmconfigdata/test-fullvirt-serial-unix.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-sound.xml b/tests/xmconfigdata/test-fullvirt-sound.xml index ac9a4c3eb6..7a266248cd 100644 --- a/tests/xmconfigdata/test-fullvirt-sound.xml +++ b/tests/xmconfigdata/test-fullvirt-sound.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-usbmouse.xml b/tests/xmconfigdata/test-fullvirt-usbmouse.xml index 133fe53f41..41dde9acae 100644 --- a/tests/xmconfigdata/test-fullvirt-usbmouse.xml +++ b/tests/xmconfigdata/test-fullvirt-usbmouse.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-usbtablet.xml b/tests/xmconfigdata/test-fullvirt-usbtablet.xml index ce12d93f6b..54cf4a22e9 100644 --- a/tests/xmconfigdata/test-fullvirt-usbtablet.xml +++ b/tests/xmconfigdata/test-fullvirt-usbtablet.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-fullvirt-utc.xml b/tests/xmconfigdata/test-fullvirt-utc.xml index 9e44651a4d..5d52a55184 100644 --- a/tests/xmconfigdata/test-fullvirt-utc.xml +++ b/tests/xmconfigdata/test-fullvirt-utc.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='cdrom'/> </os> <features> diff --git a/tests/xmconfigdata/test-no-source-cdrom.xml b/tests/xmconfigdata/test-no-source-cdrom.xml index 9d28eb5a8d..1cf3f5436a 100644 --- a/tests/xmconfigdata/test-no-source-cdrom.xml +++ b/tests/xmconfigdata/test-no-source-cdrom.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/xmconfigdata/test-pci-dev-syntax.xml b/tests/xmconfigdata/test-pci-dev-syntax.xml index 1d5d857072..fda59b7dae 100644 --- a/tests/xmconfigdata/test-pci-dev-syntax.xml +++ b/tests/xmconfigdata/test-pci-dev-syntax.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> diff --git a/tests/xmconfigdata/test-pci-devs.xml b/tests/xmconfigdata/test-pci-devs.xml index 1d5d857072..fda59b7dae 100644 --- a/tests/xmconfigdata/test-pci-devs.xml +++ b/tests/xmconfigdata/test-pci-devs.xml @@ -6,7 +6,7 @@ <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> - <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> + <loader type='rom' format='raw'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> -- 2.47.0

Refuse situations where the user configures a different format for a file-backed nvram than the template file has. At this point it's still required that the NVRAM and firmware share format, but that is going to be relaxed, thus we need to refuse configurations that the code can't handle. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_process.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 7a40e09d47..d134de532c 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4624,6 +4624,12 @@ qemuPrepareNVRAM(virQEMUDriver *driver, return -1; } + if (loader->nvram->format != loader->nvramTemplateFormat) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("conversion of the nvram template to another target format is not supported")); + return -1; + } + if ((srcFD = virFileOpenAs(loader->nvramTemplate, O_RDONLY, 0, -1, -1, 0)) < 0) { virReportSystemError(-srcFD, -- 2.47.0

Basing the selection on the format of the actual NVRAM image makes no sense as user may format the image themselves. Additionally it doesn't make much sense to even limit the firmware selection based on the nvram template itself. As format of the template is given and firmware images don't really provide any choice. Remove the limitation so that autoselection can pick a template regardless of the selected format or template format. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_firmware.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/qemu/qemu_firmware.c b/src/qemu/qemu_firmware.c index d9d21b4771..2d0ec0b4fa 100644 --- a/src/qemu/qemu_firmware.c +++ b/src/qemu/qemu_firmware.c @@ -1332,13 +1332,6 @@ qemuFirmwareMatchDomain(const virDomainDef *def, flash->nvram_template.format); return false; } - if (loader && loader->nvram && loader->nvram->format && - STRNEQ(flash->nvram_template.format, virStorageFileFormatTypeToString(loader->nvram->format))) { - VIR_DEBUG("Discarding loader with mismatching nvram template format '%s' != '%s'", - flash->nvram_template.format, - virStorageFileFormatTypeToString(loader->nvram->format)); - return false; - } } } else if (fw->mapping.device == QEMU_FIRMWARE_DEVICE_MEMORY) { if (loader && loader->type && -- 2.47.0

The nvram image can have any supported format and there's no technical requirement of them having the same format. In fact the actual nvram image doesn't necessarily need to have the same format as the template if the user is willing to format it themselves (as libvirt is not going to convert it). Remove the nonsensical check and adjust tests. The test case required swapping around the format in order to work properly. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/conf/domain_conf.c | 10 ----- ...uto-efi-format-mismatch.x86_64-latest.args | 37 +++++++++++++++++ ...auto-efi-format-mismatch.x86_64-latest.err | 1 - ...auto-efi-format-mismatch.x86_64-latest.xml | 41 +++++++++++++++++++ .../firmware-auto-efi-format-mismatch.xml | 4 +- tests/qemuxmlconftest.c | 2 +- 6 files changed, 81 insertions(+), 14 deletions(-) create mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.args delete mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.err create mode 100644 tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.xml diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 1439c6bdac..8acbea72f0 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -17270,16 +17270,6 @@ virDomainLoaderDefParseXML(virDomainLoaderDef *loader, loaderNode) < 0) return -1; - if (loader->nvram && - loader->format && loader->nvram->format && - loader->format != loader->nvram->format) { - virReportError(VIR_ERR_XML_ERROR, - _("Format mismatch: loader.format='%1$s' nvram.format='%2$s'"), - virStorageFileFormatTypeToString(loader->format), - virStorageFileFormatTypeToString(loader->nvram->format)); - return -1; - } - return 0; } diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.args b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.args new file mode 100644 index 0000000000..1bdd482d71 --- /dev/null +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.args @@ -0,0 +1,37 @@ +LC_ALL=C \ +PATH=/bin \ +HOME=/var/lib/libvirt/qemu/domain--1-guest \ +USER=test \ +LOGNAME=test \ +XDG_DATA_HOME=/var/lib/libvirt/qemu/domain--1-guest/.local/share \ +XDG_CACHE_HOME=/var/lib/libvirt/qemu/domain--1-guest/.cache \ +XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-guest/.config \ +/usr/bin/qemu-system-x86_64 \ +-name guest=guest,debug-threads=on \ +-S \ +-object '{"qom-type":"secret","id":"masterKey0","format":"raw","file":"/var/lib/libvirt/qemu/domain--1-guest/master-key.aes"}' \ +-blockdev '{"driver":"file","filename":"/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd","node-name":"libvirt-pflash0-storage","auto-read-only":true,"discard":"unmap"}' \ +-blockdev '{"node-name":"libvirt-pflash0-format","read-only":true,"driver":"raw","file":"libvirt-pflash0-storage"}' \ +-blockdev '{"driver":"file","filename":"/var/lib/libvirt/qemu/nvram/guest_VARS.fd","node-name":"libvirt-pflash1-storage","read-only":false}' \ +-machine pc-q35-4.0,usb=off,smm=on,dump-guest-core=off,memory-backend=pc.ram,pflash0=libvirt-pflash0-format,pflash1=libvirt-pflash1-storage,acpi=on \ +-accel kvm \ +-cpu qemu64 \ +-global driver=cfi.pflash01,property=secure,value=on \ +-m size=1048576k \ +-object '{"qom-type":"memory-backend-ram","id":"pc.ram","size":1073741824}' \ +-overcommit mem-lock=off \ +-smp 1,sockets=1,cores=1,threads=1 \ +-uuid 63840878-0deb-4095-97e6-fc444d9bc9fa \ +-display none \ +-no-user-config \ +-nodefaults \ +-chardev socket,id=charmonitor,fd=1729,server=on,wait=off \ +-mon chardev=charmonitor,id=monitor,mode=control \ +-rtc base=utc \ +-no-shutdown \ +-boot strict=on \ +-audiodev '{"id":"audio1","driver":"none"}' \ +-global ICH9-LPC.noreboot=off \ +-watchdog-action reset \ +-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny \ +-msg timestamp=on diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.err b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.err deleted file mode 100644 index abfdfc4357..0000000000 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.err +++ /dev/null @@ -1 +0,0 @@ -XML error: Format mismatch: loader.format='qcow2' nvram.format='raw' diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.xml new file mode 100644 index 0000000000..79ab55751b --- /dev/null +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.x86_64-latest.xml @@ -0,0 +1,41 @@ +<domain type='kvm'> + <name>guest</name> + <uuid>63840878-0deb-4095-97e6-fc444d9bc9fa</uuid> + <memory unit='KiB'>1048576</memory> + <currentMemory unit='KiB'>1048576</currentMemory> + <vcpu placement='static'>1</vcpu> + <os firmware='efi'> + <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> + <firmware> + <feature enabled='yes' name='enrolled-keys'/> + <feature enabled='yes' name='secure-boot'/> + </firmware> + <loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd</loader> + <nvram template='/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/guest_VARS.fd</nvram> + <boot dev='hd'/> + </os> + <features> + <acpi/> + <smm state='on'/> + </features> + <cpu mode='custom' match='exact' check='none'> + <model fallback='forbid'>qemu64</model> + </cpu> + <clock offset='utc'/> + <on_poweroff>destroy</on_poweroff> + <on_reboot>restart</on_reboot> + <on_crash>destroy</on_crash> + <devices> + <emulator>/usr/bin/qemu-system-x86_64</emulator> + <controller type='usb' index='0' model='none'/> + <controller type='sata' index='0'> + <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/> + </controller> + <controller type='pci' index='0' model='pcie-root'/> + <input type='mouse' bus='ps2'/> + <input type='keyboard' bus='ps2'/> + <audio id='1' type='none'/> + <watchdog model='itco' action='reset'/> + <memballoon model='none'/> + </devices> +</domain> diff --git a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.xml b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.xml index 4af77c3bee..6caec1a94c 100644 --- a/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.xml +++ b/tests/qemuxmlconfdata/firmware-auto-efi-format-mismatch.xml @@ -5,8 +5,8 @@ <vcpu placement='static'>1</vcpu> <os firmware='efi'> <type arch='x86_64' machine='pc-q35-4.0'>hvm</type> - <loader format='qcow2'/> - <nvram format='raw'/> + <loader format='raw'/> + <nvram format='qcow2'/> </os> <features> <acpi/> diff --git a/tests/qemuxmlconftest.c b/tests/qemuxmlconftest.c index 9bcd937447..d9ed266cfb 100644 --- a/tests/qemuxmlconftest.c +++ b/tests/qemuxmlconftest.c @@ -1471,7 +1471,7 @@ mymain(void) DO_TEST_CAPS_LATEST("firmware-auto-efi-format-nvram-qcow2-network-nbd"); DO_TEST_CAPS_ARCH_LATEST("firmware-auto-efi-format-loader-raw", "aarch64"); DO_TEST_CAPS_ARCH_LATEST_ABI_UPDATE("firmware-auto-efi-format-loader-raw", "aarch64"); - DO_TEST_CAPS_LATEST_PARSE_ERROR("firmware-auto-efi-format-mismatch"); + DO_TEST_CAPS_LATEST("firmware-auto-efi-format-mismatch"); DO_TEST_CAPS_LATEST("clock-utc"); DO_TEST_CAPS_LATEST("clock-localtime"); -- 2.47.0

The setup of nvram will later be extended to also support block-device backed nvram, so extract the file-backed nvram setup steps from 'qemuPrepareNVRAM' into 'qemuPrepareNVRAMFile'. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_process.c | 77 +++++++++++++++++++++++++++-------------- 1 file changed, 51 insertions(+), 26 deletions(-) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index d134de532c..7fbf18ec10 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -4584,39 +4584,18 @@ qemuPrepareNVRAMHelper(int dstFD, static int -qemuPrepareNVRAM(virQEMUDriver *driver, - virDomainObj *vm, - bool reset_nvram) +qemuPrepareNVRAMFile(virDomainObj *vm, + bool reset_nvram) { - g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver); + qemuDomainObjPrivate *priv = vm->privateData; + g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(priv->driver); VIR_AUTOCLOSE srcFD = -1; virDomainLoaderDef *loader = vm->def->os.loader; struct qemuPrepareNVRAMHelperData data; - if (!loader || !loader->nvram) - return 0; - - if (!virStorageSourceIsLocalStorage(loader->nvram)) { - if (!reset_nvram) { - return 0; - } else { - virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", - _("resetting of nvram is not supported with network backed nvram")); - return -1; - } - } - if (virFileExists(loader->nvram->path) && !reset_nvram) return 0; - /* virFileRewrite() would overwrite the device node-file/symlink rather than - * just write the data to it, thus block-device nvram is not yet supported */ - if (virStorageSourceIsBlockLocal(loader->nvram)) { - virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", - _("creation or formatting of nvram type='block' is not supported")); - return -1; - } - if (!loader->nvramTemplate) { virReportError(VIR_ERR_OPERATION_FAILED, _("unable to find any master var store for loader: %1$s"), @@ -4653,6 +4632,52 @@ qemuPrepareNVRAM(virQEMUDriver *driver, } +static int +qemuPrepareNVRAM(virDomainObj *vm, + bool reset_nvram) +{ + virDomainLoaderDef *loader = vm->def->os.loader; + + if (!loader || !loader->nvram) + return 0; + + switch (virStorageSourceGetActualType(loader->nvram)) { + case VIR_STORAGE_TYPE_FILE: + return qemuPrepareNVRAMFile(vm, reset_nvram); + + case VIR_STORAGE_TYPE_BLOCK: + /* virFileRewrite() would overwrite the device node-file/symlink rather than + * just write the data to it, thus block-device nvram is not yet supported */ + if (virFileExists(loader->nvram->path) && !reset_nvram) + return 0; + + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("creation or formatting of nvram type='block' is not supported")); + return -1; + + case VIR_STORAGE_TYPE_DIR: + case VIR_STORAGE_TYPE_NETWORK: + case VIR_STORAGE_TYPE_VOLUME: + case VIR_STORAGE_TYPE_NVME: + case VIR_STORAGE_TYPE_VHOST_USER: + case VIR_STORAGE_TYPE_VHOST_VDPA: + case VIR_STORAGE_TYPE_LAST: + case VIR_STORAGE_TYPE_NONE: + if (reset_nvram) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, + _("resetting of nvram is not supported with nvram device backed by '%1$s'"), + virStorageTypeToString(virStorageSourceGetActualType(loader->nvram))); + return -1; + } + + /* otherwise we just assume that the user did set up stuff correctly */ + break; + } + + return 0; +} + + static void qemuLogOperation(virDomainObj *vm, const char *msg, @@ -7283,7 +7308,7 @@ qemuProcessPrepareHost(virQEMUDriver *driver, qemuProcessMakeDir(driver, vm, priv->channelTargetDir) < 0) return -1; - if (qemuPrepareNVRAM(driver, vm, !!(flags & VIR_QEMU_PROCESS_START_RESET_NVRAM)) < 0) + if (qemuPrepareNVRAM(vm, !!(flags & VIR_QEMU_PROCESS_START_RESET_NVRAM)) < 0) return -1; if (vm->def->vsock) { -- 2.47.0

In case when a management application will require to store the nvram in a block device instead of a file libvirt needs to be able to set up the block device. This patch introduces support for setting up the block device by using 'qemu-img convert' to produce a qcow2-formatted block device. The use of 'qcow2' is made mandatory as the UEFI firmware requires that the NVRAM image has the exact expected size, which is almost impossible with block devices. 'qcow2' also allows libvirt to detect wheher the block device is formatted allowing file-like semantics. Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/qemu/qemu_process.c | 74 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 66 insertions(+), 8 deletions(-) diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 7fbf18ec10..c25929da90 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -101,6 +101,7 @@ #include "virutil.h" #include "storage_source.h" #include "backup_conf.h" +#include "storage_file_probe.h" #include "logging/log_manager.h" #include "logging/log_protocol.h" @@ -4583,6 +4584,70 @@ qemuPrepareNVRAMHelper(int dstFD, } +static int +qemuPrepareNVRAMBlock(virDomainObj *vm, + bool reset_nvram) +{ + virDomainLoaderDef *loader = vm->def->os.loader; + g_autoptr(virCommand) qemuimg = NULL; + const char *templateFormatStr = "raw"; + + if (!virFileExists(loader->nvram->path)) { + virReportError(VIR_ERR_INVALID_ARG, + _("'block' nvram backing device '%1$s' doesn't exist"), + loader->nvram->path); + return -1; + } + + if (!reset_nvram) { + int format; + + if (loader->nvram->format == VIR_STORAGE_FILE_RAW) { + /* For 'raw' image libvirt can't check if the image is correct */ + return 0; + } + + if ((format = virStorageFileProbeFormat(loader->nvram->path, 0, 0)) < 0) + return -1; + + /* If we find a qcow2 image assume it's correct */ + if (format == VIR_STORAGE_FILE_QCOW2) + return 0; + } + + /* The PFLASH device backing the NVRAM must have the exact size the + * firmware expects. This is almost impossible to achieve using a block + * device. Avoid headaches -> force users to use qcow2 which can + * restrict the size if libvirt is to format the image. */ + if (loader->nvram->format != VIR_STORAGE_FILE_QCOW2) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("only 'qcow2' formatted 'block' nvram backing can be formatted")); + return -1; + } + + if (!loader->nvramTemplate) { + virReportError(VIR_ERR_OPERATION_FAILED, "%s", + _("unable to find nvram template image")); + return -1; + } + + if (loader->nvramTemplateFormat != VIR_STORAGE_FILE_NONE) + templateFormatStr = virStorageFileFormatTypeToString(loader->nvramTemplateFormat); + + qemuimg = virCommandNewArgList("qemu-img", "convert", + "-f", templateFormatStr, + "-O", "qcow2", + loader->nvramTemplate, + loader->nvram->path, + NULL); + + if (virCommandRun(qemuimg, NULL) < 0) + return -1; + + return 0; +} + + static int qemuPrepareNVRAMFile(virDomainObj *vm, bool reset_nvram) @@ -4646,14 +4711,7 @@ qemuPrepareNVRAM(virDomainObj *vm, return qemuPrepareNVRAMFile(vm, reset_nvram); case VIR_STORAGE_TYPE_BLOCK: - /* virFileRewrite() would overwrite the device node-file/symlink rather than - * just write the data to it, thus block-device nvram is not yet supported */ - if (virFileExists(loader->nvram->path) && !reset_nvram) - return 0; - - virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", - _("creation or formatting of nvram type='block' is not supported")); - return -1; + return qemuPrepareNVRAMBlock(vm, reset_nvram); case VIR_STORAGE_TYPE_DIR: case VIR_STORAGE_TYPE_NETWORK: -- 2.47.0

On 11/5/24 08:57, Peter Krempa wrote:
This patch fixes a few quirks regarding block device use for NVRAM backing and introduces support for populating the block device from template.
Peter Krempa (13): qemuPrepareNVRAM: Don't attempt to create NVRAM on block device qemuFirmwareEnsureNVRAM: Don't try to setup non-local nvram qemu: Install backing store terminators for 'pflash' blockdevs conf: domain: Clarify nvram/loader format logic docs: formatdomain: Clarify that NVRAM template is also being autoselected firmware: Add 'templateFormat' XML attribute and plumb it in conf: domain: Output 'format' attribute of '<nvram>' also for' raw images conf: Always format firmware image format qemuPrepareNVRAM: Refuse conversion of NVRAM backing file format qemuFirmwareMatchDomain: Don't base firmware selection on nvram image format conf: Remove nonsensical requirement of nvram format matching firmware format qemu: process: Extract setup of file-backed nvram from template qemu: process: Introduce setup of block-device backed NVRAM
Reviewed-by: Michal Privoznik <mprivozn@redhat.com> Michal

On a Tuesday in 2024, Peter Krempa wrote:
This patch fixes a few quirks regarding block device use for NVRAM backing and introduces support for populating the block device from template.
Peter Krempa (13): qemuPrepareNVRAM: Don't attempt to create NVRAM on block device qemuFirmwareEnsureNVRAM: Don't try to setup non-local nvram qemu: Install backing store terminators for 'pflash' blockdevs conf: domain: Clarify nvram/loader format logic docs: formatdomain: Clarify that NVRAM template is also being autoselected firmware: Add 'templateFormat' XML attribute and plumb it in conf: domain: Output 'format' attribute of '<nvram>' also for' raw images conf: Always format firmware image format qemuPrepareNVRAM: Refuse conversion of NVRAM backing file format qemuFirmwareMatchDomain: Don't base firmware selection on nvram image format conf: Remove nonsensical requirement of nvram format matching firmware format qemu: process: Extract setup of file-backed nvram from template qemu: process: Introduce setup of block-device backed NVRAM
Reviewed-by: Ján Tomko <jtomko@redhat.com> Jano
participants (3)
-
Ján Tomko
-
Michal Prívozník
-
Peter Krempa