Bug 330711

Summary: kernel packages that remain installed seem to be ignored in yum transaction check
Product: [Fedora] Fedora Reporter: Thorsten Leemhuis <fedora>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: urgent    
Version: 8CC: adrin.jalali, belegdol, bjorn, bmillett, braden, dhaval.giani, djuran, ffesti, ianburrell, ihok, james.antill, jp, jtravnick, landonmkelsey, ma, mishu, musuruan, pmatilai, rc040203, redhat_bugzilla, rodd, s.adam, tla, t.matsuu, tmz, ville.skytta
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 3.2.8-1.fc8 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-12-04 16:41:10 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 235704    
Attachments:
Description Flags
more detailed output of reported scenario created with "yum -d 9 update"
none
patch to yum - should let it properly add special pkgs like kernels and kernel-modules to ts for depsolving none

Description Thorsten Leemhuis 2007-10-13 11:31:43 EDT
Description of problem:
yum aborts with an error during "Running transaction check" that's actually not
an error. See:

[thl@ankh-morpork ~]$ rpm -qa kernel kmod-ntfs*
kmod-ntfs-2.1.28-10.lvn8
kernel-2.6.23-0.224.rc9.git6.fc8
kmod-ntfs-2.6.23-0.224.rc9.git6.fc8-2.1.28-10.lvn8
[thl@ankh-morpork ~]$ rpm -Va kernel kmod-ntfs*

Everything fine so far -- only one kernel is installed with the matching
kernel-module (kmod-ntfs-2.6.23-0.224.rc9.git6.fc8-2.1.28-10.lvn8) and a package
with tracks it in for the lastest kernel (kmod-ntfs-2.1.28-10.lvn8). Now let's
update:

[thl@ankh-morpork ~]$ sudo yum update
Loading "refresh-updatesd" plugin
Excluding Packages in global exclude list
Finished
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package kernel.x86_64 0:2.6.23-6.fc8 set to be updated
---> Package kernel-headers.x86_64 0:2.6.23-6.fc8 set to be updated
---> Package kmod-ntfs.x86_64 0:2.1.28-13.lvn8 set to be updated
--> Processing Dependency: kmod-ntfs-2.6.23-6.fc8 for package: kmod-ntfs
--> Processing Dependency: kernel-x86_64 = 2.6.23-0.224.rc9.git6.fc8 for
package: kmod-ntfs-2.6.23-0.224.rc9.git6.fc8
--> Running transaction check
---> Package kmod-ntfs-2.6.23-6.fc8.x86_64 0:2.1.28-13.lvn8 set to be updated
--> Processing Dependency: kernel-x86_64 = 2.6.23-0.224.rc9.git6.fc8 for
package: kmod-ntfs-2.6.23-0.224.rc9.git6.fc8
--> Finished Dependency Resolution
Error: Missing Dependency: kernel-x86_64 = 2.6.23-0.224.rc9.git6.fc8 is needed
by package kmod-ntfs-2.6.23-0.224.rc9.git6.fc8

This error at least afaics is no error -- kernel-2.6.23-0.224.rc9.git6.fc8 is
installed already and will remain installed (just as
kmod-ntfs-2.6.23-0.224.rc9.git6.fc8), thus everything should be fine.


Version-Release number of selected component (if applicable):
yum-3.2.6-5.fc8
rpm-4.4.2.2-2.fc8
rpm-libs-4.4.2.2-2.fc8
rpm-python-4.4.2.2-2.fc8

How reproducible:
Always -- I ran into this myself and got reports from users

Additional info:
Note that the above is using a enhanced version of the old Fedora kmod standard
-- here we have a kmod-foo package that requires a kmod-foo-$(uname -r) package.
But it should not matter much for the error in question. I actually suspect the
old kmod standard as well as a kernel module packaging scheme from another 3rd
party repo might run into the same problem.
Comment 1 Thorsten Leemhuis 2007-10-13 11:31:43 EDT
Created attachment 226441 [details]
more detailed output of reported scenario created with "yum -d 9 update"
Comment 2 Todd Zullinger 2007-10-13 13:04:55 EDT
I think I've seen this same problem before when a package (a kmdl) had a
requirement on /boot/vmlinuz-<kernel_ver>.  Once the kernel package was no
longer in the repository, yum would complain about a missing dependency, even
though "rpm -q --whatprovides /boot/vmlinuz-<kernel_ver>" clearly showed the dep
could be satisfied from the package on disk.
Comment 3 Seth Vidal 2007-10-17 14:09:50 EDT
okay I think I know what's going on. We're adding the kernel as an update when
it is really an install. The old kernel is being added as 'being updated' so the
depsolver is looking at it like it needs to be removed.

I'm looking into it a bit deeper but I'm pretty sure that's the case.

If you can test it try installing the newer kernel specifically:

yum install kernel-2.6.23-6.fc8

see if it complains, too.

it might - but I'd be curious to know.
Comment 4 Thorsten Leemhuis 2007-10-17 14:17:13 EDT
(In reply to comment #3)
> okay I think I know what's going on. We're adding the kernel as an update when
> it is really an install. The old kernel is being added as 'being updated' so the
> depsolver is looking at it like it needs to be removed.

Yeah, that could be it.
 
> If you can test it try installing the newer kernel specifically:
> yum install kernel-2.6.23-6.fc8
> see if it complains, too.
> it might - but I'd be curious to know.

It does:

[thl@ankh-morpork ~]$ yum install kernel-2.6.23-6.fc8
Loading "refresh-updatesd" plugin
You need to be root to perform this command.
[thl@ankh-morpork ~]$ sudo yum install kernel-2.6.23-6.fc8
Loading "refresh-updatesd" plugin
livna-development         100% |=========================| 2.1 kB    00:00     
development               100% |=========================| 2.1 kB    00:00     
Excluding Packages in global exclude list
Finished
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package kernel.x86_64 0:2.6.23-6.fc8 set to be updated
--> Processing Dependency: kernel-x86_64 = 2.6.23-0.224.rc9.git6.fc8 for
package: kmod-ntfs-2.6.23-0.224.rc9.git6.fc8
--> Finished Dependency Resolution
Error: Missing Dependency: kernel-x86_64 = 2.6.23-0.224.rc9.git6.fc8 is needed
by package kmod-ntfs-2.6.23-0.224.rc9.git6.fc8
Unable to send message to yum-updatesd
Comment 5 Julian Sikorski 2007-10-17 14:24:31 EDT
Confirmed:

[root@snowball jsikorski]# yum install kernel-2.6.23-6.fc8
Loading "skip-broken" plugin
Loading "fastestmirror" plugin
Loading "fedorakmod" plugin
Loading "refresh-updatesd" plugin
Existing lock /var/run/yum.pid: another copy is running as pid 14849.
Another app is currently holding the yum lock; waiting for it to exit...
Another app is currently holding the yum lock; waiting for it to exit...
Loading mirror speeds from cached hostfile
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package kernel.x86_64 0:2.6.23-6.fc8 set to be updated
--> Processing Dependency: kernel-x86_64 = 2.6.23-5.fc8 for package:
kmod-nvidia-2.6.23-5.fc8
--> Finished Dependency Resolution
--> Running transaction check
---> Package kernel.x86_64 0:2.6.23-6.fc8 set to be installed
--> Processing Dependency: kernel-x86_64 = 2.6.23-5.fc8 for package:
kmod-nvidia-2.6.23-5.fc8
---> Package kernel.x86_64 0:2.6.23-0.222.rc9.git4.fc8 set to be erased
--> Finished Dependency Resolution
Error: Missing Dependency: kernel-x86_64 = 2.6.23-5.fc8 is needed by package
kmod-nvidia-2.6.23-5.fc8
[root@snowball jsikorski]# 
Comment 6 Thorsten Leemhuis 2007-10-28 08:03:29 EDT
Another recent report in a external bugzilla from a add-on repo; yum output can
be found in http://bugzilla.livna.org/attachment.cgi?id=407
Comment 7 Ralf Corsepius 2007-11-07 00:48:14 EST
And another one:
http://bugzilla.livna.org/show_bug.cgi?id=1708
Comment 8 Thorsten Leemhuis 2007-11-14 15:14:22 EST
devel is F8 now, so updating version to F8, as thats where most people will get
into trouble due to this bug; 
Comment 9 Thorsten Leemhuis 2007-11-14 15:15:30 EST
*** Bug 374711 has been marked as a duplicate of this bug. ***
Comment 10 Thorsten Leemhuis 2007-11-14 15:18:10 EST
*** Bug 362071 has been marked as a duplicate of this bug. ***
Comment 11 Thorsten Leemhuis 2007-11-14 15:22:23 EST
*** Bug 375421 has been marked as a duplicate of this bug. ***
Comment 12 Takanori MATSUURA 2007-11-14 21:09:18 EST
See Bug 374711 comment #1.

Is the severity low?
I guess this bug also occurs in kmod-em8300 and kmod-sysprof packages that is
distributed by Fedora.
Comment 13 Matthieu Pupat 2007-11-14 21:55:06 EST
Same issue with kmod-fglrx
Comment 14 Matthieu Pupat 2007-11-25 11:15:20 EST
# yum update
Loading "priorities" plugin
0 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package kmod-fglrx.x86_64 0:8.42.3-8.lvn8 set to be updated
--> Processing Dependency: kmod-fglrx-2.6.23.1-49.fc8 for package: kmod-fglrx
---> Package kernel.x86_64 0:2.6.23.1-49.fc8 set to be updated
--> Processing Dependency: kernel-x86_64 = 2.6.23.1-42.fc8 for package:
kmod-fglrx-2.6.23.1-42.fc8
--> Running transaction check
---> Package kmod-fglrx-2.6.23.1-49.fc8.x86_64 0:8.42.3-8.lvn8 set to be updated
--> Processing Dependency: kernel-x86_64 = 2.6.23.1-42.fc8 for package:
kmod-fglrx-2.6.23.1-42.fc8
--> Processing Dependency: /boot/vmlinuz-2.6.23.1-42.fc8 for package:
gspcav1-kmdl-2.6.23.1-42.fc8
--> Finished Dependency Resolution
Error: Missing Dependency: kernel-x86_64 = 2.6.23.1-42.fc8 is needed by package
kmod-fglrx-2.6.23.1-42.fc8
Error: Missing Dependency: /boot/vmlinuz-2.6.23.1-42.fc8 is needed by package
gspcav1-kmdl-2.6.23.1-42.fc8
Comment 15 Matthieu Pupat 2007-11-25 11:16:12 EST
Could somebody with power please change priority to high as it prevents several
people from updating their kernels and associated modules.

Thanks in advance
Comment 16 Landon Kelsey 2007-11-25 12:22:01 EST
This fixed it for me!

http://thorstenl.blogspot.com/2007/11/problems-updating-kernels-and-kmods.html

afterwards I had to do a yum install kmod-nvidia
Comment 17 Rodd Clarkson 2007-11-28 22:38:21 EST
Let's be clear about this.  The solution above isn't a 'fix'.  It's a hack to
work around the problem.

Here's hoping this bug is actually being worked on, rather than just bitched about.
Comment 18 Seth Vidal 2007-11-29 14:43:40 EST
Created attachment 273211 [details]
patch to yum - should let it properly add special pkgs like kernels and kernel-modules to ts for depsolving

I've attached a patch that I'd love some testing on. I _think_ it should work.
Comment 19 Thorsten Leemhuis 2007-11-29 15:07:13 EST
(In reply to comment #18)
> I've attached a patch that I'd love some testing on. I _think_ it should work.

did some testing (applied patch on top of what's in CVS for F8) and afaics it
fixes the issue. thx skvidal!
Comment 20 Seth Vidal 2007-11-29 19:18:30 EST
more testing is welcome - but this has been checked into upstream yum and it'll
be in yum 3.2.8. which, barring anything unforeseen, will be out sooner than later.
Comment 21 Seth Vidal 2007-12-04 16:29:42 EST
*** Bug 411091 has been marked as a duplicate of this bug. ***
Comment 22 Seth Vidal 2007-12-05 08:23:35 EST
*** Bug 411541 has been marked as a duplicate of this bug. ***
Comment 23 Rodd Clarkson 2007-12-06 01:14:02 EST
Just to confirm, 3.2.8 will be targeted at f8?
Comment 24 Martin J├╝rgens 2007-12-06 01:27:33 EST
Yes, it is already in updates-testing.
Comment 25 Rodd Clarkson 2007-12-06 01:49:41 EST
I've just grabbed yum-3.2.8-2.fc8 from koji and then used it to update f8 with
nvidia packages from livna which weren't working after a recent kernel update
and older (current) yum for f8.  Does that make sense.

I can confirm that this fix works.
Comment 26 Fedora Update System 2007-12-06 12:39:07 EST
yum-3.2.8-1.fc7 has been pushed to the Fedora 7 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update yum'
Comment 27 Fedora Update System 2007-12-06 15:52:01 EST
yum-3.2.8-1.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 28 Andreas Bierfert 2007-12-06 16:50:17 EST
I can also confirm that it seems to work well.
Comment 29 Seth Vidal 2007-12-06 21:38:33 EST
*** Bug 249194 has been marked as a duplicate of this bug. ***
Comment 30 Seth Vidal 2007-12-06 23:39:36 EST
*** Bug 400881 has been marked as a duplicate of this bug. ***
Comment 31 Matthieu Pupat 2007-12-07 07:36:01 EST
I just ran yum update yum and did not get 3.2.8-1:

# yum list yum
Installed Packages
yum.noarch                               3.2.7-2.fc8            installed       
Comment 32 Seth Vidal 2007-12-07 07:44:52 EST
Then you probably are not contacting a current mirror. Run:
 yum --enablerepo=updates-testing update yum
Comment 33 jtravnick 2007-12-07 08:03:21 EST
I also tried yum update yum and am not getting 3.2.8.1

[root@localhost ~]# yum list yum
Installed Packages
yum.noarch                               3.2.7-2.fc8            installed       
[root@localhost ~]# yum update yum
Setting up Update Process
Could not find update match for yum
No Packages marked for Update
[root@localhost ~]# yum --enablerepo=updates-testing update yum
updates-testing           100% |=========================| 2.3 kB    00:00     
primary.sqlite.bz2        100% |=========================| 162 kB    00:00     
Setting up Update Process
Could not find update match for yum
No Packages marked for Update
[root@localhost ~]# yum list yum
Installed Packages
yum.noarch                               3.2.7-2.fc8            installed       
[root@localhost ~]# 

When is this going to get fixed? I cant update my system anymore.
Comment 34 Thorsten Leemhuis 2007-12-07 08:05:11 EST
(In reply to comment #32)
> Then you probably are not contacting a current mirror. 

it's not there (yet?) afaics:
http://download.fedora.redhat.com/pub/fedora/linux/updates/testing/8/x86_64/

The pushes happen only seldom (once a week most of the time afaics), that's
afaics why it's not in the repos.
Comment 35 Matthieu Pupat 2007-12-07 08:07:26 EST
According to #27 it should be in stable repository.