Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package virt-manager for openSUSE:Factory 
checked in at 2021-03-02 12:26:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virt-manager (Old)
 and      /work/SRC/openSUSE:Factory/.virt-manager.new.2378 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virt-manager"

Tue Mar  2 12:26:19 2021 rev:221 rq:875162 version:3.2.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/virt-manager/virt-manager.changes        
2021-01-29 14:55:16.753348916 +0100
+++ /work/SRC/openSUSE:Factory/.virt-manager.new.2378/virt-manager.changes      
2021-03-02 12:27:46.251441456 +0100
@@ -1,0 +2,7 @@
+Wed Feb 24 14:10:01 MST 2021 - a...@suse.com
+
+- bsc#1178926 - Unable to find any master var for loader
+  /usr/share/qemu/{bios.bin, bios-256k.bin}
+  virtman-legacy-bios-support.patch
+
+-------------------------------------------------------------------

New:
----
  virtman-legacy-bios-support.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ virt-manager.spec ++++++
--- /var/tmp/diff_new_pack.UzbRMN/_old  2021-03-02 12:27:47.723442772 +0100
+++ /var/tmp/diff_new_pack.UzbRMN/_new  2021-03-02 12:27:47.727442776 +0100
@@ -67,6 +67,7 @@
 Patch158:       virtman-disallow-adding-floppy-disk.patch
 Patch159:       virtman-register-delete-event-for-details-dialog.patch
 Patch160:       virtman-show-no-firmware-for-xenpv.patch
+Patch161:       virtman-legacy-bios-support.patch
 Patch170:       virtinst-xen-drive-type.patch
 Patch171:       virtinst-xenbus-disk-index-fix.patch
 Patch172:       virtinst-refresh_before_fetch_pool.patch
@@ -198,6 +199,7 @@
 %patch158 -p1
 %patch159 -p1
 %patch160 -p1
+%patch161 -p1
 %patch170 -p1
 %patch171 -p1
 %patch172 -p1

++++++ virtinst-keep-iso-for-xenpv.patch ++++++
--- /var/tmp/diff_new_pack.UzbRMN/_old  2021-03-02 12:27:47.831442868 +0100
+++ /var/tmp/diff_new_pack.UzbRMN/_new  2021-03-02 12:27:47.835442873 +0100
@@ -1,3 +1,7 @@
+References: bsc#1180897
+Removing the cdrom iso file from the device prevents booting
+with a qemu error.
+
 Index: virt-manager-3.2.0/virtinst/install/installer.py
 ===================================================================
 --- virt-manager-3.2.0.orig/virtinst/install/installer.py

++++++ virtinst-smbios-unsupported-for-xenpv.patch ++++++
--- /var/tmp/diff_new_pack.UzbRMN/_old  2021-03-02 12:27:47.859442894 +0100
+++ /var/tmp/diff_new_pack.UzbRMN/_new  2021-03-02 12:27:47.863442897 +0100
@@ -4,7 +4,7 @@
 ===================================================================
 --- virt-manager-3.2.0.orig/virtinst/guest.py
 +++ virt-manager-3.2.0/virtinst/guest.py
-@@ -691,6 +691,8 @@ class Guest(XMLBuilder):
+@@ -704,6 +704,8 @@ class Guest(XMLBuilder):
              self.type != "kvm"):
              log.warning(  # pragma: no cover
                      "KVM acceleration not available, using '%s'", self.type)

++++++ virtman-legacy-bios-support.patch ++++++
References: bsc#1178926

When we choose /usr/share/qemu/bios.bin or /usr/share/qemu/bios-256k.bin
in Customize configuration before install, show this error message:

Unable to complete install: 'operation failed: unable to find any master var 
store for loader: /usr/share/qemu/bios.bin'

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 65, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/createvm.py", line 2081, in 
_do_async_install
    installer.start_install(guest, meter=meter)
  File "/usr/share/virt-manager/virtinst/install/installer.py", line 721, in 
start_install
    domain = self._create_guest(
  File "/usr/share/virt-manager/virtinst/install/installer.py", line 669, in 
_create_guest
    domain = self.conn.createXML(install_xml or final_xml, 0)
  File "/usr/lib64/python3.8/site-packages/libvirt.py", line 4347, in createXML
    raise libvirtError('virDomainCreateXML() failed')
libvirt.libvirtError: operation failed: unable to find any master var store for 
loader: /usr/share/qemu/bios.bin

This patch check the loader if it is include bios.bin and bios-256k.bin.

Signed-off-by: Yu-Chen, Cho <acho suse com>
--
v2:
Fixed tabs vs spaces issues.

v1:
Check the loader if it is include bios.bin and bios-256k.bin.
---
 virtManager/object/domain.py | 18 +++++++++---------
 virtinst/guest.py            | 13 +++++++++++++
 2 files changed, 22 insertions(+), 9 deletions(-)

Index: virt-manager-3.2.0/virtManager/object/domain.py
===================================================================
--- virt-manager-3.2.0.orig/virtManager/object/domain.py
+++ virt-manager-3.2.0/virtManager/object/domain.py
@@ -671,16 +671,16 @@ class vmmDomain(vmmLibvirtObject):
 
         if loader != _SENTINEL:
             if loader is None:
-                # Implies seabios, aka the default, so clear everything
-                guest.os.loader = None
-                guest.os.loader_ro = None
-                guest.os.loader_type = None
-                guest.os.nvram = None
-                guest.os.nvram_template = None
+                # Implies the default, so clear everything
+                guest.set_legacy_path(None)
             else:
-                # Implies UEFI
-                guest.set_uefi_path(loader)
-                guest.disable_hyperv_for_uefi()
+                if "bios.bin" in loader or "bios-256k.bin" in loader:
+                    # Implies Custom: seabios, not UEFI
+                    guest.set_legacy_path(loader)
+                else:
+                    # Implies UEFI
+                    guest.set_uefi_path(loader)
+                    guest.disable_hyperv_for_uefi()
 
         if nvram != _SENTINEL:
             guest.os.nvram = nvram
Index: virt-manager-3.2.0/virtinst/guest.py
===================================================================
--- virt-manager-3.2.0.orig/virtinst/guest.py
+++ virt-manager-3.2.0/virtinst/guest.py
@@ -569,6 +569,19 @@ class Guest(XMLBuilder):
                         self.os.machine)
                 self.os.machine = "q35"
 
+    def set_legacy_path(self, path):
+        """
+        Configure legacy BIOS for QEMU.
+        """
+        self.os.loader = path
+        if (path):
+            self.os.loader_ro = True
+        else:
+            self.os.loader_ro = None
+        self.os.loader_type = None
+        self.os.nvram = None
+        self.os.nvram_template = None
+
     def disable_hyperv_for_uefi(self):
         # UEFI doesn't work with hyperv bits for some OS
         if not self.is_uefi():

Reply via email to