Zypper dup failure: file conflict loop

Today I tried to zypper dup from Tumblweed 20180109-0 to 20180114-0. The command stalled at ‘Checking for file conflicts’ for about five minutes (as it has before), then began spitting out file conflict messages. I stopped the scrolling messages with Ctrl-S, took a photo of the screen, will hand-copy one representative message:

File/usr/src/linux-4.14.12-1/Documentation/ABI/obsolete/sysfs-bus-usb
     from install of
          kernel-source-4.14.12-1.8.noarch (Main Repository (OSS))
     conflicts with file from package
          kernel-source-4.14.12-1.5.noarch (OSystem)

(FWIW: Uname-r says that my current kernel is 4.14.12-1-default)

A half-hour later, I returned to the computer, found these file conflict messages still endlessly looping. I took another photo,hand copy another representative message:

File/usr/src/linux-4.14.12-1/arch/arm/boot/dts/sama5d3_lcd.dtsl
     from install of
          kernel-source-4.14.12-1.8.noarch (Main Repository (OSS))
     conflicts with file from package
          kernel-source-4.14.12-1.4.noarch (OSystem)

I shut down the system, used Clonezilla to restore [FONT=Courier 10 Pitch]20180109-0 so I could use my computer and write this message.[/FONT]

I’ve used Tumblweed since the summer, have regularly zypper dup’d in the months since, and never before encountered a problem like this. Can anyone suggest a way of dealing with it? Should I wait for a new snapshot to come out, try again? Do something else?

My enabled repositories:

    PackmanRepository        http://packman.inode.at/suse/openSUSE_Tumbleweed/
    openSUSE_Tumblweed        http://download.opensuse.org/repositories/KDE:/Extra/openSUSE_Tumbleweed/
    libdvdcss            http://opensuse-guide.org/repo/openSUSE_Tumbleweed/
    svalx'sHomeProject        http://download.opensuse.org/repositories/home/svalx/openSUSE_Tumblweed/
    MainUpdate Repository        http://download.opensuse.org/update/tumbleweed/
    MainRepository (OSS)        http://download.opensuse.org/tumbleweed/repo/oss/
    MainRepository(NON-OSS)    http://download.opensuse.org/tumbleweed/repo/non-oss/

Thank you!

Some additional information, as I scratch my head over how to deal with this problem:

In /etc/zypp/zypp.conf , I have multiversion.kernels = latest,latest-1,running

In Yast, under Versions for kernel-default, I have, with check marks:

4.14.12-1.5-x86_64 from @System with priority 99 and vendor openSUSE
4.14.11-1.5-x86_64 from @System with priority 99 and vendor openSUSE

and without check marks:

4.14.12-1.8-x86_64 from Main Repository (OSS) with priority 99 and vendor openSUSE
4.14.12-1.8-i586 from Main Repository (OSS) with priority 99 and vendor openSUSE

Post:

zypper se -si kernel-default

Please use for that Code-Tags.

What I see is:
You have installed a Version 4.14.12-1.4, get an Update for Version 4.14.12-1.5, after that you get an Update to 4.14.12-1.8.
All without a Reboot.

So the Conflicts are normal for me…

I have just tried to update this morning and am seeing exactly the same type of error. I have re-booted just in case but the errors persist.


 zypper se -si kernel-default
Loading repository data...
Reading installed packages...

S  | Name                 | Type    | Version     | Arch   | Repository       
---+----------------------+---------+-------------+--------+------------------
i+ | kernel-default       | package | 4.14.12-1.5 | x86_64 | (System Packages)
i+ | kernel-default       | package | 4.14.11-1.5 | x86_64 | (System Packages)
i+ | kernel-default-devel | package | 4.14.12-1.5 | x86_64 | (System Packages)
i+ | kernel-default-devel | package | 4.14.11-1.5 | x86_64 | (System Packages)

uname -a
Linux Tumbleweed.Crowhill 4.14.12-1-default #1 SMP PREEMPT Fri Jan 5 18:15:55 UTC 2018 (3cf399e) x86_64 x86_64 x86_64 GNU/Linux


Lookin at the messages from zypper it does seem a bit of a mess with some saying the kernel update will not be updated but then saying the new kernel package will be installed.

So is there a problem with the updates or is something else wrong on my system?

Stuart

Thanks for the response, Sauerland … and broadstairs, sorry you’re having similar issues.

Sauerland, as you requested:

sudo zypper se -si kernel-default
Loading repository data...
Reading installed packages...


S  | Name                 | Type    | Version     | Arch   | Repository       
---+----------------------+---------+-------------+--------+------------------
i+ | kernel-default       | package | 4.14.12-1.5 | x86_64 | (System Packages)
i+ | kernel-default       | package | 4.14.11-1.5 | x86_64 | (System Packages)
i  | kernel-default-devel | package | 4.14.12-1.5 | x86_64 | (System Packages)
i  | kernel-default-devel | package | 4.14.11-1.5 | x86_64 | (System Packages)

FWIW: I have rebooted many times between each zypper dup.

Multiversion between two rebuilds of the same RPM simply is not possible - multiversion relies on different versions installing files in different places, while two rebuilds of the same RPM are exactly the same with respect to file list. zypper should handle it correctly for binary kernel packages by removing older package. It is possible that it does not implement this workaround for kernel-source.

Do you really need kernel-source in the first place? Are you building your own modified kernel from openSUSE kernel sources? What was the reason to install kernel-source?

I just checked and I do not have kernel-source installed but I do see


File /usr/share/doc/packages/kernel-source-4.14.12-1/README.SUSE
  from install of
     kernel-devel-4.14.12-1.8.noarch (openSUSE:Tumbleweed)
  conflicts with file from package
     kernel-devel-4.14.12-1.4.noarch (@System)

File /usr/share/doc/packages/kernel-source-4.14.12-1/README.SUSE
  from install of
     kernel-devel-4.14.12-1.8.noarch (openSUSE:Tumbleweed)
  conflicts with file from package
     kernel-devel-4.14.12-1.5.noarch (@System)

Stuart

Thank you for joining in, arvidjaar!

I think, but am not sure, that I installed kernel-source either to accommodate the nvidia driver (installed the ‘hard way’) or VirtualBox. I’m certain that I’ve had kernel-source installed for a long time.

Yes, I think it is a bug somewhere between zypper and kernel packages (I’m surprised nobody complained before). Compare “zypper install kernel-default” or “zypper install kernel-default-devel” with “zypper install kernel-devel”. The former attempts to uninstall existing package together with installation while the latter only installs new one.

May be something was changed in kernel packaging. I’ll drop a note on opensuse-kernel list. In the meantime you are free to open bug report :slight_smile:

Thanks again, arvidjaar. I had guessed a bug; I haven’t done anything unusual between zypper dups.

kernel-source is not necessary to build these kernel modules though.
kernel-devel and kernel-default-devel should be enough.

So you might want to uninstall it. (though apparently kernel-devel also has file conflicts…)

Regarding the file conflicts themselves: it should be safe to ignore them in this case, as the files are the same anyway. Maybe add the --replacefiles option to zypper dup this one time (uninstalling all versions and only reinstalling the latest one would of course work as well).

kernel-source is not needed to compile kernel modules. kernel-default-devel is needed for this. If this was the only reason, you are better off simply removing it.

Of course we still have issue with kernel-devel right now, but at least it is much smaller package that does not trigger other performance problems during installation. And you spare download of kernel-source RPM which is not entirely small either :slight_smile:

I wish I could remember why and when I installed kernel-source. I’ve forgotten the details of my configuration work last summer. Some program may have called for it … or, I may have installed it unnecessarily, when kernel-devel was all I needed.

Thanks again to you both and to others who have contributed to this thread. For now, I think I’ll wait for another snapshot (or two) to roll out, to see if this problem is addressed. I’ve had kernel-source installed for a long time and dozens of successful zypper dups under my belt, all without this problem.

I think there is a bug here as I dont have the source installed and still see the problem. Hopefully they will fix this quickly.

Stuart

Yeah there is a bug somewhere. Mine didn’t get in a loop, but it complained that every kernel-devel file (lots) from from the previous version was conflicting with the to-be-installed version. However it uninstalled the previous version before installing the next kernel-devel, so there were no actual conflicts. It’s not a conflict that is normally reported in the past, this is a new bug, perhaps started Jan 2 - Jan 10 range.

So do you believe it is safe to allow it to carry on or should we wait for a fix?

Stuart

As I wrote already, it should be safe to ignore this file conflict.
Or uninstall all versions of the affected packages and install the latest versions fresh.

As usual spot on advice and I am now up and running having ignored the error. No problems that I can find…

Stuart

Snapshot 20180116 – which includes a change from kernel 4.14.12* to 4.14.13-1 – seems to have turned the trick for me. Zypper dup lingered for a bit on ‘Checking for file conflicts,’ then gave three messages about file conflicts – for symlinks, I think – and gave me the option of typing ‘yes’ to copy over the files. I took this option (perhaps the default), and zypper dup puttered along smoothly afterward. Everything seems to be working, fully functional.

Thanks again to those who helped me troubleshoot this problem.

Yes, because it’s a new version (not just a rebuild) and installs its files to a different folder (so there are no file conflicts anymore).