]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
firmware: Add 'templateFormat' XML attribute and plumb it in
authorPeter Krempa <pkrempa@redhat.com>
Tue, 20 Aug 2024 14:19:00 +0000 (16:19 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 15 Nov 2024 08:42:04 +0000 (09:42 +0100)
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>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
53 files changed:
docs/formatdomain.rst
src/conf/domain_conf.c
src/conf/domain_conf.h
src/conf/schemas/domaincommon.rng
src/qemu/qemu_firmware.c
tests/qemuxmlconfdata/aarch64-virt-graphics.aarch64-latest.xml
tests/qemuxmlconfdata/aarch64-virt-headless-mmio.aarch64-latest.xml
tests/qemuxmlconfdata/aarch64-virt-headless.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi-aarch64.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-enrolled-keys.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2-nvram-path.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-loader-qcow2.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-loader-raw.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2-path.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-format-nvram-qcow2.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-loader-insecure.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-loader-path.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi-loader-secure.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi-loongarch64.loongarch64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-no-enrolled-keys.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-no-secboot.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-nvram-file.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-nvram-path.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-nvram-template.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-riscv64.riscv64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi-secboot.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi-smm-off.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.abi-update.xml
tests/qemuxmlconfdata/firmware-auto-efi.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-aarch64-legacy-paths.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-acpi-aarch64.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-acpi-q35.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-features.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-loader-secure.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys-legacy-paths.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-no-enrolled-keys.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-no-secboot-legacy-paths.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-no-secboot.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-noacpi-aarch64.aarch64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-nvram-file.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-nvram-template.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-secboot-legacy-paths.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi-secboot.x86_64-latest.xml
tests/qemuxmlconfdata/firmware-manual-efi.x86_64-latest.xml
tests/qemuxmlconfdata/hvf-aarch64-virt-headless.aarch64-latest.xml
tests/qemuxmlconfdata/hvf-x86_64-q35-headless.x86_64-latest.xml
tests/qemuxmlconfdata/pvpanic-pci-aarch64.aarch64-latest.xml
tests/qemuxmlconfdata/pvpanic-pci-no-address-aarch64.aarch64-latest.xml
tests/qemuxmlconfdata/virtio-iommu-aarch64.aarch64-latest.xml

index cec11270b94f3eff033ef1bf8b08406baa1f46fa..b3f9f453aa1e3b3ba6fa7ad921144f4fece71913 100644 (file)
@@ -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.
index 986c634faed99f54fb19e417d9149f3fba21d5fd..8d0d8222415a01fe1b5f4ed350fc5030df52fff3 100644 (file)
@@ -17148,6 +17148,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) {
@@ -26825,6 +26841,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;
 
index 45c52107e8ef006db7cfe52c5e825521dae21fb4..dff39a44acac54d565361d9e3907c491bc731f21 100644 (file)
@@ -2346,6 +2346,7 @@ struct _virDomainLoaderDef {
     virStorageSource *nvram;
     bool newStyleNVRAM;
     char *nvramTemplate;   /* user override of path to master nvram */
+    virStorageFileFormat nvramTemplateFormat;
 };
 
 virDomainLoaderDef *virDomainLoaderDefNew(void);
index 8360eeae3f1e93d95b31f0e5cff3cf9262fba0ac..2ba94d1f028dbf5965729498c3211017694f05f7 100644 (file)
                 <attribute name="template">
                   <ref name="absFilePath"/>
                 </attribute>
+                <optional>
+                  <attribute name="templateFormat">
+                    <ref name="pflashFormatTypes"/>
+                  </attribute>
+                </optional>
               </optional>
               <optional>
                 <ref name="pflashFormat"/>
     </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>
 
index 5c247b1cf299c144d74da321b8d772612dacf244..d9d21b47711e2fc08222f5ba2e83eb2e828b921c 100644 (file)
@@ -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));
index c7bddf4063cb1008323e3acf3efae724992225f2..f6cfe2b63c3e06cdbbc0890e631c1a329ce6b320 100644 (file)
@@ -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>
index 1b2d6e70bdeeaed5636d1b7707f09fc56414e8e2..56d40b0a9df9189f0a170c393d48e2a468352607 100644 (file)
@@ -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>
index 5029092842a0f6a2900956383545dc9cf0f07537..c8fa37a6447336382ee6c1e10a914cfca2891df9 100644 (file)
@@ -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>
index 0088f3324bd6eb6956859cec0bb30c0dd523171e..1a9baa8cc13a58559d825fe1a4c9e25856f8ef5e 100644 (file)
@@ -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>
index 38c680fabd92c97c427bd9a929f32b6edcddb985..c6f3a5fe6b4efd9018acb82eb2afa6dbc6cd9dff 100644 (file)
@@ -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>
index 332d931ba190c519e8a0d0cdb624bcedbf98d7af..729d2d911d93fa6f7e1031cdee750216a9251550 100644 (file)
@@ -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>
index 49fdfc5c5f00f0ebb6877af95f425bfb0b04bbdf..dd044ac091e6da0c6341d406064aa0793c7907ec 100644 (file)
@@ -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>
index f4ff7a0fc2786ff0796b2b7ef455f5b17bc83d28..7cdc7eec1f2824603970b175e82a8584472fe3d1 100644 (file)
@@ -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>
index ee22b168315c8ee724a6396ed58462e1e21745ad..195b446a0aa6456a754710ee39fb56b38269d509 100644 (file)
@@ -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>
index 38c680fabd92c97c427bd9a929f32b6edcddb985..c6f3a5fe6b4efd9018acb82eb2afa6dbc6cd9dff 100644 (file)
@@ -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>
index 49fdfc5c5f00f0ebb6877af95f425bfb0b04bbdf..dd044ac091e6da0c6341d406064aa0793c7907ec 100644 (file)
@@ -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>
index f4ff7a0fc2786ff0796b2b7ef455f5b17bc83d28..7cdc7eec1f2824603970b175e82a8584472fe3d1 100644 (file)
@@ -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>
index 4812c4e600cc666937ea56242a43c284819fe823..6690c45940dd5ffa30aebf274f9769c63b767f77 100644 (file)
@@ -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>
index 6b8dc886a65b26e1ef74ca5a76c4ad054a1a00f6..430613f5fd94ffbfabafb575b83ba2d88582e902 100644 (file)
@@ -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>
index f4ff7a0fc2786ff0796b2b7ef455f5b17bc83d28..7cdc7eec1f2824603970b175e82a8584472fe3d1 100644 (file)
@@ -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>
index 332d931ba190c519e8a0d0cdb624bcedbf98d7af..729d2d911d93fa6f7e1031cdee750216a9251550 100644 (file)
@@ -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>
index 0ae744619f33f9eeb60866f9cf62518d8e7866e1..8ba1bd0f8176e2d0a6a6f9f94c3be7de251f82f0 100644 (file)
@@ -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>
index 0ae744619f33f9eeb60866f9cf62518d8e7866e1..8ba1bd0f8176e2d0a6a6f9f94c3be7de251f82f0 100644 (file)
@@ -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>
index 9cf30551a939c43af95f115eb44472c6e4b600d9..53381bd10e57e7e95894d6d4d01e886c286b0208 100644 (file)
@@ -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>
index 6b8dc886a65b26e1ef74ca5a76c4ad054a1a00f6..430613f5fd94ffbfabafb575b83ba2d88582e902 100644 (file)
@@ -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>
index ada0411fb3dcfe986741bdf201ca3379c33c2640..1672edd458e489e8b2e85e09f05ee96a63d8bedf 100644 (file)
@@ -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'/>
index 135744cb7df03fc2690756000b3069056354890a..94dd6a29b92dd42ac1a632aa32af9560483abb00 100644 (file)
@@ -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>
index 9cf30551a939c43af95f115eb44472c6e4b600d9..53381bd10e57e7e95894d6d4d01e886c286b0208 100644 (file)
@@ -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>
index d0a60c5bb81d17130af257b9cf26ed4f2ff626e5..125bd021e7cabda58011f6fae6df73dac3199a51 100644 (file)
@@ -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'>
index 332d931ba190c519e8a0d0cdb624bcedbf98d7af..729d2d911d93fa6f7e1031cdee750216a9251550 100644 (file)
@@ -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>
index febaad7eaeb85207c30ea37c524a2a622023f4c0..c53e9f9692e047808034739eb48a54ef534543fa 100644 (file)
@@ -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>
index f4ff7a0fc2786ff0796b2b7ef455f5b17bc83d28..7cdc7eec1f2824603970b175e82a8584472fe3d1 100644 (file)
@@ -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>
index 332d931ba190c519e8a0d0cdb624bcedbf98d7af..729d2d911d93fa6f7e1031cdee750216a9251550 100644 (file)
@@ -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>
index b53f39a72e5821143d7bbd7d7090826197c02a40..c4ab86c6753cf33be44733f17c4f133c581912ea 100644 (file)
@@ -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>
index 637676d4edcaa7e5a993686dd93025c8204b1d38..0dc32d0ce9b5840eb9e00b80c7fd1aa5d53eaa66 100644 (file)
@@ -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>
index a4af4ec25a511415d9040b87c3dc9c54577bbd5f..e7b764b9b04598b11770f2b2a699cf2df748d5a1 100644 (file)
@@ -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>
index 4d6f2f20aa69ee92112dcfee193440307addde43..67d90c4b1c6c0ba91f29c3ee70e4f44e131e7aa5 100644 (file)
@@ -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>
index 6c3355a3f671079952c96d01e4828404acba16c5..a8c52c9819cee3a72eb5cfdbdd2929ca9b475c72 100644 (file)
@@ -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>
index b8c2dfef6632e8de013b1898127d3b0ec9b0516c..7e2b963537c1b6f77053c0c1c8b636aef1e20fc7 100644 (file)
@@ -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>
index 083562ab0bbb4e51b922ff266e0a7f0048ff2e69..dd69b42726fcffa34b2ad05936a4b7b751a1b1b1 100644 (file)
@@ -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>
index cfd7a6824f0a2504a8110c6df73ebf5b881c2e55..cd48e5e7b95d1b93f0107c1de76370ecd2eb6306 100644 (file)
@@ -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>
index a4af4ec25a511415d9040b87c3dc9c54577bbd5f..e7b764b9b04598b11770f2b2a699cf2df748d5a1 100644 (file)
@@ -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>
index 52f9fac842792396fc7d8fd7a3f12db8c2ac727e..fd217afb89e78a26553b31a2d7b5fcd59ead4fe3 100644 (file)
@@ -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>
index ada0411fb3dcfe986741bdf201ca3379c33c2640..1672edd458e489e8b2e85e09f05ee96a63d8bedf 100644 (file)
@@ -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'/>
index 4d6f2f20aa69ee92112dcfee193440307addde43..67d90c4b1c6c0ba91f29c3ee70e4f44e131e7aa5 100644 (file)
@@ -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>
index 90271235589359722ae0cf8681144ed3c9111bd4..e6db577de488db84e9b5aae0f1f80442871fd4f5 100644 (file)
@@ -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>
index 6c3355a3f671079952c96d01e4828404acba16c5..a8c52c9819cee3a72eb5cfdbdd2929ca9b475c72 100644 (file)
@@ -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>
index 5bdc9bd4c192349e804bc498ee673a528b763225..4615cd8db81e15cbcd6ef88d8bdce77a65e664b5 100644 (file)
@@ -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>
index dba840237a12f8dd247d72ddef970dc9da820572..f26cce3028eb72869822b8021447d14c16a64f60 100644 (file)
@@ -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>
index 6c6c1ea8b0eeaaab331d250711846f64a689e8f0..2291362b53c31f0644b132bc3e7d723f62572229 100644 (file)
@@ -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>
index d318aa63a19b9b65b991b3b64dc26d715174941c..5db6e997369a454232bc15070c44e39c097d5d4b 100644 (file)
@@ -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>
index 92a81991e24773b3925fe7e5aa001110db38cacd..eabe7c0b4d4ed10f8135236f7d6fb610951453bd 100644 (file)
@@ -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>
index bc6d21045883509519a7f188ec8246c471882b74..398ae4e3ded071c9a8651aeb00e3b43c4f668bc9 100644 (file)
@@ -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>