[PATCH virt-manager]: virtinst: correctly find the sles s390x kernel and initrd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Allow virt-install to correctly find the SLES kernel/initrd on the media
when installing an s390x VM.

Signed-off-by: Charles Arnold <carnold@xxxxxxxx>

diff --git a/virtinst/urlfetcher.py b/virtinst/urlfetcher.py
index c48e9d5..3e62c2b 100644
--- a/virtinst/urlfetcher.py
+++ b/virtinst/urlfetcher.py
@@ -369,6 +369,8 @@ def _distroFromSUSEContent(fetcher, arch, vmtype=None):
             arch = "x86_64"
         elif cbuf.find("i586") != -1:
             arch = "i586"
+        elif cbuf.find("s390x") != -1:
+            arch = "s390x"
 
     dclass = GenericDistro
     if distribution:
@@ -934,16 +936,22 @@ class SuseDistro(Distro):
             oldkern += "64"
             oldinit += "64"
 
-        # Tested with Opensuse >= 10.2, 11, and sles 10
-        self._hvm_kernel_paths = [("boot/%s/loader/linux" % self.arch,
-                                    "boot/%s/loader/initrd" % self.arch)]
-        # Tested with Opensuse 10.0
-        self._hvm_kernel_paths.append(("boot/loader/%s" % oldkern,
-                                       "boot/loader/%s" % oldinit))
+        if self.arch == "s390x":
+            self._hvm_kernel_paths = [ ("boot/%s/linux" % self.arch,
+                                        "boot/%s/initrd" % self.arch) ]
+            # No Xen on s390x
+            self._xen_kernel_paths = []
+        else:
+            # Tested with Opensuse >= 10.2, 11, and sles 10
+            self._hvm_kernel_paths = [("boot/%s/loader/linux" % self.arch,
+                                        "boot/%s/loader/initrd" % self.arch)]
+            # Tested with Opensuse 10.0
+            self._hvm_kernel_paths.append(("boot/loader/%s" % oldkern,
+                                           "boot/loader/%s" % oldinit))
 
-        # Matches Opensuse > 10.2 and sles 10
-        self._xen_kernel_paths = [("boot/%s/vmlinuz-xen" % self.arch,
-                                    "boot/%s/initrd-xen" % self.arch)]
+            # Matches Opensuse > 10.2 and sles 10
+            self._xen_kernel_paths = [("boot/%s/vmlinuz-xen" % self.arch,
+                                        "boot/%s/initrd-xen" % self.arch)]
 
     def _variantFromVersion(self):
         distro_version = self.version_from_content[1].strip()
@@ -971,6 +979,13 @@ class SuseDistro(Distro):
         self._variantFromVersion()
 
         self.os_variant = self._detect_osdict_from_url()
+
+        # Reset kernel name for sle11 source on s390x
+        if self.arch == "s390x":
+            if self.os_variant == "sles11" or self.os_variant == "sled11":
+                self._hvm_kernel_paths = [ ("boot/%s/vmrdr.ikr" % self.arch,
+                                            "boot/%s/initrd" % self.arch) ]
+
         return True
 
     def _get_method_arg(self):



_______________________________________________
virt-tools-list mailing list
virt-tools-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/virt-tools-list



[Index of Archives]     [Linux Virtualization]     [KVM Development]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]     [Video 4 Linux]

  Powered by Linux