[virt-tools-list] [PATCH virt-manager]: virtinst: correctly find the sles s390x kernel and initrd
Cole Robinson
crobinso at redhat.com
Fri Sep 11 15:59:55 UTC 2015
On 09/11/2015 11:41 AM, Charles Arnold wrote:
> Allow virt-install to correctly find the SLES kernel/initrd on the media
> when installing an s390x VM.
>
> Signed-off-by: Charles Arnold <carnold at suse.com>
>
Thanks for the patch. Is there a public URL/media to test this against?
There's some minor pep8 errors:
virtinst/urlfetcher.py:940: [E201] whitespace after '['
virtinst/urlfetcher.py:941: [E202] whitespace before ']'
virtinst/urlfetcher.py:986: [E201] whitespace after '['
virtinst/urlfetcher.py:987: [E202] whitespace before ']'
One comment below:
> 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) ]
> +
>From my reading of _detect_osdict_from_url it will only return opensuse* OS
names, not sles* or sled*, so I'm not sure how this path is triggered with
virt-manager.git
Thanks,
Cole
More information about the virt-tools-list
mailing list