On 10/20/20 11:39 AM, daggs wrote:
Greetings All,

following a suggestion I got here on how to properly boot uefi-q35 guest, I 
found an weird config in the xml.
this is what I see when I run virsh edit streamer-vm-q35:
<os firmware='efi'>
   <type arch='x86_64' machine='pc-q35-5.0'>hvm</type>
   <boot dev='hd'/>
</os>

when I run virsh dumpxml streamer-vm-q35, I get this:
<os>
   <type arch='x86_64' machine='pc-q35-5.0'>hvm</type>
   <loader readonly='yes' 
type='pflash'>/usr/share/qemu/edk2-x86_64-secure-code.fd</loader>
   <nvram 
template='/usr/share/qemu/edk2-i386-vars.fd'>/var/lib/libvirt/qemu/nvram/streamer-vm-q35_VARS.fd</nvram>
   <boot dev='hd'/>
</os>

question is, why the nvram template is /usr/share/qemu/edk2-i386-vars.fd and 
not /usr/share/qemu/edk2-x86_64-code.fd (file exists) as the system is x64?


IIRC you're using gentoo, which is what I happen to have too :-)
And looking into my system I can see this file:

  /usr/share/qemu/firmware/50-edk2-x86_64-secure.json

which defines this pair:

{
    "mapping": {
        "device": "flash",
        "executable": {
            "filename": "/usr/share/qemu/edk2-x86_64-secure-code.fd",
            "format": "raw"
        },
        "nvram-template": {
            "filename": "/usr/share/qemu/edk2-i386-vars.fd",
            "format": "raw"
        }
    },
}


I'm not sure if this is a bug though. The NVRAM has a defined structure and possibly is 32/64bit agnostic (on Intel at least).

Michal

Reply via email to