Bugzilla – Bug 948482
yast2-vm: does not install kernel-xen when 'Xen server' is selected
Last modified: 2015-12-08 13:11:57 UTC
The yast2-vm module (yast2 virtualization from command line) relies on patterns to install the correct packages. All the packages seem to get installed correctly except kernel-xen (even the hypervisor is installed). Steps to dup: 1) Install an os42.1 host taking the defaults 2) Run 'yast2 virtualization' from the command line or 'Install Hypervisor and Tools' from a yast 'System'->'Virtualization' menu 3) Select 'Xen server' and 'Xen tools' and 'Accept' At this point various packages get installed including the hypervisor but no kernel-xen. I've tried this on as recent as Build0202. The old yast2-vm module explicitly specified kernel-xen. This changed to using patterns in SLE12/opensuse 13.2 and works in those distros. I haven't tried Tumbleweed lately.
The same can be observed with: > sudo zypper in -t pattern xen_server Loading repository data... Reading installed packages... Resolving package dependencies... The following 5 NEW packages are going to be installed: libspice-controller0 patterns-openSUSE-xen_server virt-viewer xen xen-doc-html The following NEW pattern is going to be installed: xen_server The following 3 recommended packages were automatically selected: virt-viewer xen xen-doc-html 5 new packages to install. Overall download size: 10.3 MiB. Already cached: 0 B. After the operation, additional 35.8 MiB will be used. Continue? [y/n/? shows all options] (y): The pattern is going to be installed, but kernel-xen is not in the list of packages to add. The pattern does list kernel-xen: > zypper info -t pattern xen_server Loading repository data... Reading installed packages... Information for pattern xen_server: ----------------------------------- Repository: openSUSE-Tumbleweed-Oss Name: xen_server Version: 20150828-2.1 Arch: x86_64 Vendor: openSUSE Installed: No Visible to User: Yes Summary: Xen Virtual Machine Host Server Description: Software to set up a server for configuring, managing, and monitoring virtual machines on a single physical machine. Contents: S | Name | Type | Dependency --+------------------------------+---------+----------- i | bridge-utils | package | | kernel-xen | package | | libvirt-daemon-xen | package | i | patterns-openSUSE-base | package | | patterns-openSUSE-xen_server | package | | virt-manager | package | | virt-viewer | package | | vm-install | package | | xen | package | | xen-doc-html | package | i | xen-libs | package | | xen-tools | package | i | xterm | package | i | yast2-vm | package | installing kernel-xen manually does not cause any resolution conflicts: > sudo zypper in kernel-xen Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW package is going to be installed: kernel-xen 1 new package to install. Overall download size: 45.0 MiB. Already cached: 0 B. After the operation, additional 211.9 MiB will be used. So, this sounds like libzypp/libsolv is not giving a complete solution to the problem at hand (or something pretends that this kernel-xen is not needed for the pattern)
Can this be a problem that openSUSE-release provides: weakremover(kernel-xen) < 3.11 having this already installed sounds like a valid solution to the "Recommends: kernel-xen" requirement from the pattern.
The weakremover() stuff is only looked at in 'zypper dup' runs. So it must be something else. Please attach a solver testcase...
Created attachment 649890 [details] A solver test case ran using: zypper in --debug-solver -t pattern xen_server (on a TW install, but the effects observed are equal)
Oh my, a libsolv bug. The obsoletes pruning code in the weak deps handling was never updated, so it still used the old "obsoletes work on provides" semantics. The installed kernel-desktop obsoletes ath3k-firmware <= 1.0, which is provided by kernel-xen. Fixed in libsolv with commit e810d2f44efab6f2fd598f0c2643a5a3741edae2
(In reply to Michael Schröder from comment #6) > Oh my, a libsolv bug. The obsoletes pruning code in the weak deps handling > was never updated, so it still used the old "obsoletes work on provides" > semantics. > > The installed kernel-desktop obsoletes ath3k-firmware <= 1.0, which is > provided by kernel-xen. > > Fixed in libsolv with commit e810d2f44efab6f2fd598f0c2643a5a3741edae2 GREAT ! Thanks Michael. AS Leap 42.1 uses libsolv from SLE12SP1: can you please ensure this fix finds its way there? Then Leap will inherit it.
Verified fixed in Build0213.
SUSE-RU-2015:1941-1: An update that has 16 recommended fixes can now be installed. Category: recommended (moderate) Bug References: 900769,941453,941463,941539,941563,943563,945169,946129,946750,946752,948482,948608,949957,951339,951402,951782 CVE References: Sources used: SUSE Linux Enterprise Software Development Kit 12 (src): libsolv-0.6.14-2.13.1, libzypp-14.42.3-2.31.1 SUSE Linux Enterprise Server 12 (src): libsolv-0.6.14-2.13.1, libzypp-14.42.3-2.31.1, yast2-pkg-bindings-3.1.20.2-8.1, zypper-1.11.42-2.25.2 SUSE Linux Enterprise Desktop 12 (src): libsolv-0.6.14-2.13.1, libzypp-14.42.3-2.31.1, yast2-pkg-bindings-3.1.20.2-8.1, zypper-1.11.42-2.25.2
openSUSE-RU-2015:2226-1: An update that has 11 recommended fixes can now be installed. Category: recommended (low) Bug References: 900769,943563,945169,946129,946750,946752,948482,949957,951339,951402,951782 CVE References: Sources used: openSUSE 13.2 (src): libsolv-0.6.14-16.1, libzypp-14.42.3-32.1, zypper-1.11.42-28.1