virt-manager/virtinst-pvgrub2-bootloader.patch
Charles Arnold 0b51f8ff5d - bsc#1196202 - virt-install crashes on a time-of-check time-of-use
(TOCTOU) race condition
  Resolved by upgrade to version 4.0.0 (jsc#SLE-16582)
  virt-manager-4.0.0.tar.gz
- Other features and bug fixes (bsc#1027942)
  virt-install –os-variant/–osinfo is now a hard requirement for most cases
  Add ‘Enable shared memory’ UI checkbox (Lin Ma)
  add UI preference to default to UEFI for new VMs (Charles Arnold)
  Add virtiofs filesystem driver UI option
  Fill in all –cputune, –cpu, –shmem, –input, and –boot suboptions (Hugues Fafard)
  virt-* mdev improvements (Shalini Chellathurai Saroja)
  bhyve improvments (Roman Bogorodskiy)
  Revive network portgroup UI
  enable a TPM by default when UEFI is used (Daniel P. Berrangé)
  Use cpu host-passthrough by default on qemu x86
  use virtio-gpu video for most modern distros
  Default to extra pcie root ports for q35
  set discard=unmap by default for sparse disks and block devices
  We now require xorissofs for –location ISO
  We now use setuptools rather than just plain distutils
- Add virtman-revert-use-of-AyatanaAppIndicator3.patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=558
2022-03-03 04:17:21 +00:00

41 lines
1.9 KiB
Diff

Reference: bnc#863821
grub.xen is required to boot PV VMs that use the BTRFS filesystem.
This patch forces the use of grub.xen (instead of using pygrub) for
suse distros SLE12GA, openSUSE 13.2, and newer.
Index: virt-manager-4.0.0/virtinst/install/installer.py
===================================================================
--- virt-manager-4.0.0.orig/virtinst/install/installer.py
+++ virt-manager-4.0.0/virtinst/install/installer.py
@@ -222,7 +222,8 @@ class Installer(object):
def _alter_treemedia_bootconfig(self, guest):
if not self._treemedia:
- return
+ if not self._treemedia_bootconfig or "grub.xen" not in self._treemedia_bootconfig[0]:
+ return
kernel, initrd, kernel_args = self._treemedia_bootconfig
if kernel:
@@ -582,6 +583,21 @@ class Installer(object):
final_xml = guest.get_xml()
if self._requires_postboot_xml_changes():
initial_xml, final_xml = self._build_postboot_xml(final_xml, meter)
+ if (guest.os.is_xenpv() and
+ not guest.os.kernel):
+ os_ver = guest.osinfo.name
+ if guest.os.arch != 'x86_64' or os_ver.startswith("sles9") or \
+ os_ver.startswith("sles10") or os_ver.startswith("sled10") or \
+ os_ver.startswith("opensuse10") or os_ver.startswith("opensuse11"):
+ guest.bootloader = "pygrub"
+ else:
+ guest.bootloader = None
+ self._treemedia_bootconfig = ("/usr/lib/grub2/x86_64-xen/grub.xen", "", "")
+ log.debug("Using grub.xen to boot guest")
+ on_reboot_value = guest.on_reboot
+ self._alter_bootconfig(guest)
+ guest.on_reboot = on_reboot_value
+ final_xml = guest.get_xml()
final_xml = self._pre_reinstall_xml or final_xml
log.debug("Generated initial_xml: %s",