Update From 7.3 To 7.4 Failing Because Of Architecture Change From PPC64 To PPC

Home » CentOS » Update From 7.3 To 7.4 Failing Because Of Architecture Change From PPC64 To PPC
CentOS 6 Comments

I’m having problems updating from 7.3 to 7.4 on my ppc64 (IBM Power7 p770) installation. yum update stops with Error:

Multilib version problems found.
[..]
Protected multilib versions: systemd-libs-219-42.el7.ppc !systemd-libs-219-42.el7_4.1.ppc64

When I scroll back through the transaction check I see various package dependencies for *.ppc instead of *.ppc64. First appearance in the check is glibc.ppc and then everything goes nuts:

[..]
–> Running transaction check
—> Package boost-date-time.ppc64 0:1.53.0-27.el7 will be installed
—> Package elfutils-default-yama-scope.noarch 0:0.168-8.el7 will be installed
—> Package glibc.ppc 0:2.17-196.el7 will be installed
–> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.17-196.el7.ppc
–> Processing Dependency: libfreebl3.so for package: glibc-2.17-196.el7.ppc
—> Package grub2-common.noarch 1:2.02-0.64.el7.CentOS will be installed
—> Package grub2-ppc64.ppc64 1:2.02-0.64.el7.CentOS will be installed
–> Processing Dependency: grub2-ppc64-modules 1:2.02-0.64.el7.CentOS for package:
1:grub2-ppc64-2.02-0.64.el7.CentOS.ppc64
—> Package gtk-update-icon-cache.ppc64 0:3.22.10-4.el7 will be installed
—> Package libfastjson.ppc64 0:0.99.4-2.el7 will be installed
—> Package libseccomp.ppc64 0:2.3.1-3.el7 will be installed
—> Package nss-pem.ppc64 0:1.0.3-4.el7 will be installed
—> Package python-linux-procfs.noarch 0:0.4.9-3.el7 will be installed
—> Package python-schedutils.ppc64 0:0.4-6.el7 will be installed
—> Package stix-fonts.noarch 0:1.1.0-5.el7 will be installed
—> Package systemd-libs.ppc 0:219-42.el7 will be installed
–> Processing Dependency: libselinux.so.1 for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam_misc.so.0(LIBPAM_MISC_1.0) for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam_misc.so.0 for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam.so.0(LIBPAM_MODUTIL_1.0) for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam.so.0(LIBPAM_EXTENSION_1.0) for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam.so.0(LIBPAM_1.0) for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libpam.so.0 for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: liblzma.so.5(XZ_5.0) for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: liblzma.so.5 for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgpg-error.so.0 for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgcrypt.so.11(GCRYPT_1.2) for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgcrypt.so.11 for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgcc_s.so.1(GCC_3.3.1) for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgcc_s.so.1(GCC_3.0) for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libgcc_s.so.1 for package:
systemd-libs-219-42.el7.ppc
–> Processing Dependency: libdw.so.1 for package: systemd-libs-219-42.el7.ppc
–> Processing Dependency: libcap.so.2 for package: systemd-libs-219-42.el7.ppc
–> Running transaction check
—> Package elfutils-libs.ppc 0:0.168-8.el7 will be installed
–> Processing Dependency: elfutils-libelf(ppc-32) = 0.168-8.el7 for package: elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libz.so.1(ZLIB_1.2.2.3) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libz.so.1 for package: elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.7) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.6) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.5) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.4) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.3) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.1.1) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1(ELFUTILS_1.0) for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libelf.so.1 for package:
elfutils-libs-0.168-8.el7.ppc
–> Processing Dependency: libbz2.so.1 for package:
elfutils-libs-0.168-8.el7.ppc
[..]
The current 7.3 has no .ppc at all installed. All filesets are ppc64 or noarch.

Is it possible, that the repo is damaged somehow? How can I create additional info? Any idea how to fix it?

6 thoughts on - Update From 7.3 To 7.4 Failing Because Of Architecture Change From PPC64 To PPC

  • yum currently has issues with obsoletes .. especially when something like a noarch file gets obsoleted by an $arch type rpm and there are 2
    (multi) arches available to replace it. It pulls in BOTH, not just the one arch you have installed .. and that then pulls in deps for the 2nd arch that you don’t currently have.

    Hopefully they will fix this.

    There is an option called multilib_policy BUT that does not work with obsoletes, only updates.

  • Because of this , I put

    exclude=*.i686

    in my x86_64 installs that I am sure I do not need 32 bit packages on.

  • As discussed with James (jpoc) in #CentOS-ppc on freenode, we seem to suffer the same issue as for x86_64 wrt rdma-core (see https://wiki.CentOS.org/Manuals/ReleaseNotes/CentOS7#head-281c090cc4fbc6bb5c7d4cd82a266fce807eee7c)
    , except that for ppc64 the multilib issue forbids the ppc and ppc64
    pkgs to be installed in parallel.

    So updating from 7.3.1611 to 7.4.1708 is the same “fix” as for x86_64 :
    “yum install -y rdma-core && yum update -y” => no .ppc pkgs are pulled in at all.

  • The install of rdma-core is one way .. setting an exclude= is another. I have seen instances where installing rdma-core tries to pull in some i686 packages, depending on what all is installed on the machine .. but the –exclude=’*.i686′ (or *.ppc in the case of ppc64 tree) should alwys work.

    Regardless, they need to fix yum so it does not try to install BOTH
    arches on a multi arch setup, unless multilib_support is set to all.