virt-manager/virtinst-pvgrub2-bootloader.patch
Charles Arnold 544164a095 - Update to virt-manager 1.4.1
virt-manager-1.4.1.tar.bz2
  * storage/nodedev event API support (Jovanka Gulicoska)
  * UI options for enabling spice GL (Marc-André Lureau)
  * Add default virtio-rng /dev/urandom for supported guest OS
  * Cloning and rename support for UEFI VMs (Pavel Hrdina)
  * libguestfs inspection UI improvements (Pino Toscano)
  * virt-install: Add –qemu-commandline
  * virt-install: Add –network vhostuser (Chen Hanxiao)
  * virt-install: Add –sysinfo (Charles Arnold)
- Dropped the following patches contained in new tarball
  0425975f-use-virDomainMigrate3-API.patch
  0910c8dc-black-display-if-graphic-mode-vnc-and-listen-type-none.patch
  1d2cd306-Fix-incorrect-usage-of-virtio-input.patch
  2df8dc39-detect-whether-IP-address-comes-from-DHCP-server.patch
  559e813b-xmlbuilder-02.patch
  561f5cd3-drop-xenmigr-scheme-from-Xen-migration-URI.patch
  5a11cf07-virt-manager-generates-invalid-guest-XML.patch
  617b9271-dont-return-virtio1.0-net-as-valid-device-name.patch
  63784f4d-document-new-sysinfo-option.patch
  6daff68a-fix-italian-lang-file.patch
  7962672c-fix-error-checking-extra_args.patch
  835ddc5f-xmlbuilder-04.patch
  a3206f89-Add-the-sysinfo-option.patch
  a931a1a6-xmlbuilder-03.patch
  b08647c2-xmlbuilder-05.patch
  b31c0b44-Add-classes-for-defining-SMBios-information.patch
  b4858842-fix-bad-version-check-regression.patch
  b8dccf6a-fix-connection-to-remote-spice-with-password.patch
  c5ce0ab5-connection-fix-transport-detection.patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=341
2017-03-09 19:10:48 +00:00

54 lines
2.4 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
newer suse distros like SLE12 and openSUSE 13.2.
Index: virt-manager-1.4.1/virtinst/guest.py
===================================================================
--- virt-manager-1.4.1.orig/virtinst/guest.py
+++ virt-manager-1.4.1/virtinst/guest.py
@@ -363,8 +363,20 @@ class Guest(XMLBuilder):
if (not install and
self.os.is_xenpv() and
not self.os.kernel):
- self.bootloader = "/usr/bin/pygrub"
- self.os.clear()
+ os_ver = self._get_os_variant()
+ if os_ver.startswith("sles9") or \
+ os_ver.startswith("sles10") or os_ver.startswith("sled10") or \
+ os_ver.startswith("opensuse10") or os_ver.startswith("opensuse11"):
+ self.bootloader = "/usr/bin/pygrub"
+ self.os.clear()
+ else:
+ self.installer._install_kernel = "/usr/lib/grub2/x86_64-xen/grub.xen"
+ self.installer._install_initrd = None
+ self.installer.extraargs = None
+ # alter_bootconfig won't update the osxml unless it thinks
+ # we are in an install phase. Add force_update param to call
+ self.installer.alter_bootconfig(self, True, True)
+ logging.info("Using grub.xen to boot guest")
return self.get_xml_config()
Index: virt-manager-1.4.1/virtinst/installer.py
===================================================================
--- virt-manager-1.4.1.orig/virtinst/installer.py
+++ virt-manager-1.4.1/virtinst/installer.py
@@ -99,7 +99,7 @@ class Installer(object):
break
return bootorder
- def alter_bootconfig(self, guest, isinstall):
+ def alter_bootconfig(self, guest, isinstall, force_update=False):
"""
Generate the portion of the guest xml that determines boot devices
and parameters. (typically the <os></os> block)
@@ -110,7 +110,7 @@ class Installer(object):
'post-install' phase.
@type isinstall: C{bool}
"""
- if isinstall and not self.has_install_phase():
+ if isinstall and not force_update and not self.has_install_phase():
return
bootorder = self._build_boot_order(isinstall, guest)