Created attachment 1166046 [details] debugdata info from --debuglevel 9 --debugsolver Description of problem: Due to some issues with 4.7-rc kernel under rawhide I decided to check with 4.6 one. Fetched kernel/kernel-core/kernel-modules packages from koji and tried to install: 16:59 hrw@puchatek:del$ ls kernel-* kernel-4.6.0-1.fc25.x86_64.rpm kernel-core-4.6.0-1.fc25.x86_64.rpm kernel-modules-4.6.0-1.fc25.x86_64.rpm 16:59 hrw@puchatek:del$ sudo dnf install kernel*rpm Last metadata expiration check: 0:00:08 ago on Wed Jun 8 16:59:24 2016. Error: conflicting requests. conflicting requests. conflicting requests (try to add '--allowerasing' to command line to replace conflicting packages) 16:59 hrw@puchatek:del$ sudo dnf install kernel*rpm --allowerasing Last metadata expiration check: 0:00:20 ago on Wed Jun 8 16:59:24 2016. Error: conflicting requests. conflicting requests. conflicting requests 16:59 hrw@puchatek:del$ sudo dnf install kernel*rpm --allowerasing --best Last metadata expiration check: 0:00:25 ago on Wed Jun 8 16:59:24 2016. Error: conflicting requests. conflicting requests. conflicting requests 16:59 hrw@puchatek:del$ sudo dnf install kernel*rpm --allowerasing --best --verbose cachedir: /var/cache/dnf Loaded plugins: copr, Query, noroot, download, builddep, needs-restarting, etckeeper, reposync, protected_packages, config-manager, langpacks, generate_completion_cache, debuginfo-install, playground langpacks: No languages are enabled Error reading file : /var/lib/dnf/plugins/langpacks/installed_langpacks as it does not exist initialized Langpacks plugin DNF version: 1.1.9 repo: using cache for: google-talkplugin not found deltainfo for: google-talkplugin not found updateinfo for: google-talkplugin repo: using cache for: skype not found deltainfo for: Skype Repository not found updateinfo for: Skype Repository repo: using cache for: google-chrome not found deltainfo for: google-chrome not found updateinfo for: google-chrome repo: using cache for: fedora-rawhide-kernel-nodebug-source not found deltainfo for: Rawhide kernels built without debugging turned on - Source not found updateinfo for: Rawhide kernels built without debugging turned on - Source repo: using cache for: fedora-rawhide-kernel-nodebug not found deltainfo for: Rawhide kernels built without debugging turned on not found updateinfo for: Rawhide kernels built without debugging turned on repo: using cache for: qemu-firmware-jenkins not found deltainfo for: firmware for qemu, built by jenkins, fresh from git repos not found updateinfo for: firmware for qemu, built by jenkins, fresh from git repos repo: using cache for: rawhide not found updateinfo for: Fedora - Rawhide - Developmental packages for the next Fedora release repo: using cache for: virtualbox not found deltainfo for: Fedora 25 - x86_64 - VirtualBox not found updateinfo for: Fedora 25 - x86_64 - VirtualBox repo: using cache for: rpmfusion-free-22 not found deltainfo for: RPM Fusion for Fedora 22 - Free not found updateinfo for: RPM Fusion for Fedora 22 - Free repo: using cache for: google-chrome-unstable not found deltainfo for: google-chrome-unstable not found updateinfo for: google-chrome-unstable repo: using cache for: hrw-rpmfusion not found deltainfo for: RPM Fusion Hrw not found updateinfo for: RPM Fusion Hrw repo: using cache for: fedora-spotify not found deltainfo for: negativo17 - Spotify not found updateinfo for: negativo17 - Spotify repo: using cache for: bluejeans not found deltainfo for: Blue Jeans Network, Inc. - x86_64 software and updates not found updateinfo for: Blue Jeans Network, Inc. - x86_64 software and updates google-talkplugin: using metadata from Thu Apr 2 19:35:03 2015. skype: using metadata from Thu Jan 21 11:27:21 2010. google-chrome: using metadata from Mon Jun 6 20:22:42 2016. fedora-rawhide-kernel-nodebug-source: using metadata from Sat Jun 4 18:54:25 2016. fedora-rawhide-kernel-nodebug: using metadata from Sat Jun 4 18:54:46 2016. qemu-firmware-jenkins: using metadata from Wed Jun 8 00:08:13 2016. rawhide: using metadata from Tue Jun 7 09:29:17 2016. virtualbox: using metadata from Thu Apr 28 20:08:29 2016. rpmfusion-free-22: using metadata from Wed Aug 5 14:49:43 2015. google-chrome-unstable: using metadata from Mon Jun 6 20:22:42 2016. hrw-rpmfusion: using metadata from Fri May 20 09:56:42 2016. fedora-spotify: using metadata from Mon May 23 21:18:10 2016. bluejeans: using metadata from Fri May 6 05:04:22 2016. Last metadata expiration check: 0:00:30 ago on Wed Jun 8 16:59:24 2016. --> Starting dependency resolution --> Finished dependency resolution Error: conflicting requests. conflicting requests. conflicting requests 16:59 hrw@puchatek:del$ Version-Release number of selected component (if applicable): 17:00 hrw@puchatek:del$ dnf --version 1.1.9 Installed: dnf-0:1.1.9-2.fc25.noarch at 2016-05-30 09:17 Built : Fedora Project at 2016-05-24 15:40 Installed: rpm-0:4.13.0-0.rc1.37.fc25.x86_64 at 2016-06-08 11:27 Built : Fedora Project at 2016-06-02 14:08 How reproducible: always Steps to Reproduce: 1. start recent rawhide 2. try to install 4.6 kernel from http://koji.fedoraproject.org/koji/buildinfo?buildID=765346 Actual results: Error: conflicting requests. conflicting requests. conflicting requests Expected results: package installed or information what is wrong is provided Additional info: Is there a way to get information what is wrong? Attached debugdata does not give it.
The debugdata shows that dnf asks the solver to both install and erase the kernel, thus the "conflicting requests". I think this is a glitch in hawkey's limit_installonly_packages function, it should take the job into account. (you have kernel versions 4.7.0-0.rc0.git3.1.fc25, 4.7.0-0.rc0.git10.2.fc25, 4.7.0-0.rc2.git0.1.fc25 installed and ask for version 4.6.0-1.fc25, which has a lower version than the installed kernels)
That's why I marked it UX - message "conflicting requests" is just a bit better than "bleh bleh bleh". Saying "you have newer versions installed, try 'dnf downgrade' instead" would be better message.
(It's not complaining about the downgrade, the kernel is marked multiversion so there is no downgrade. It's the code that limits the number of installed kernels that causes the error.)
Yes, it's about the logic in hawkey when selecting which kernels should be installed and which removed because of installonly limit. I still don't know how to handle installonly limit correctly. This happens during the installation of lower kernel version. *** This bug has been marked as a duplicate of bug 1191611 ***