[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug 1913012] Re: Installed firmware descriptor files contain (invalid)
From: |
Thomas Huth |
Subject: |
[Bug 1913012] Re: Installed firmware descriptor files contain (invalid) relative paths |
Date: |
Fri, 30 Apr 2021 08:18:03 -0000 |
Fixed here:
https://gitlab.com/qemu-project/qemu/-/commit/4b956a399969c0c497a
** Changed in: qemu
Status: New => Fix Released
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1913012
Title:
Installed firmware descriptor files contain (invalid) relative paths
Status in QEMU:
Fix Released
Bug description:
After building and installing QEMU, the resulting installed firmware
descriptor files contain relative paths for their `mapping.filename`
properties. These relative paths are causing errors when using tools
based on `libvirt` like `virt-install`, resulting in the inability to
configure new VMs which reference these firmware descriptors.
# QEMU version
$ qemu-system-x86_64 -version
QEMU emulator version 5.2.0
(I've also reproduced the issue with QEMU built from Git master @
v5.2.0-1300-g0e32462630, see next comment.)
# OS version
Void Linux x86_64 (glibc)
Steps to reproduce (with results on my system):
# Verify the symptom
$ virt-install --boot firmware=efi --disk none --memory 2048
Using default --name vm4
WARNING No operating system detected, VM performance may suffer. Specify an
OS with --os-variant for optimal results.
Starting install...
ERROR Failed to open file 'share/qemu/edk2-i386-vars.fd': No such file or
directory
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///session start vm4
otherwise, please restart your installation.
# Verify that the file does exist on the system and is accessible
$ ls -l /usr/share/qemu/edk2-i386-vars.fd
-rw-r--r-- 1 root root 540672 12 dec 18:47 /usr/share/qemu/edk2-i386-vars.fd
# Verify most likely cause
$ grep filename /usr/share/qemu/firmware/*i386*.json
/usr/share/qemu/firmware/50-edk2-i386-secure.json: "filename":
"share/qemu/edk2-i386-secure-code.fd",
/usr/share/qemu/firmware/50-edk2-i386-secure.json: "filename":
"share/qemu/edk2-i386-vars.fd",
/usr/share/qemu/firmware/60-edk2-i386.json: "filename":
"share/qemu/edk2-i386-code.fd",
/usr/share/qemu/firmware/60-edk2-i386.json: "filename":
"share/qemu/edk2-i386-vars.fd",
Note that all the paths are relative and are missing <prefix>, i.e.
`/usr`.
# Workaround
Manually editing the firmware descriptor files in
`/usr/share/qemu/firmware` to contain full absolute paths to the
firmware blobs resolves the issue:
$ sudo sed -i.bak -e 's,"share/qemu/,"/usr/share/qemu/,'
/usr/share/qemu/firmware/*.json
$ virt-install --boot firmware=efi --disk none --memory 2048
[...VM boots normally...]
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1913012/+subscriptions
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Bug 1913012] Re: Installed firmware descriptor files contain (invalid) relative paths,
Thomas Huth <=