Bug 605226

Summary: yum reinstall useless for kernel package
Product: [Fedora] Fedora Reporter: Tobias Mueller <fedora-bugs>
Component: yumAssignee: Seth Vidal <skvidal>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 13CC: ffesti, james.antill, jnovy, maxamillion, metherid, pmatilai, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-17 13:33:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Tobias Mueller 2010-06-17 13:18:01 UTC
Description of problem:
I just upgraded from F12 to F13 and the new kernel was not installed properly (i.e. on the root partition but not on the boot partition, leaving me with an unusable system, because all the modules for the kernels that remained in /boot/ were deleted.. *yay*). With the help of a live system, I manually copied the new kernel (/mnt/root/boot/) onto the boot partition (/mnt/boot/) and edited the grub config. That worked.

Now I want yum to properly install the new kernel, just because I don't know whether I did everything right. yum reinstall kernel doesn't work. yum remove kernel && yum install kernel doesn't work either because it removes almost every package, too.


Version-Release number of selected component (if applicable):
muelli@bigbox ~ $ yum --version
3.2.27
  Installed: rpm-4.8.0-14.fc13.x86_64 at 2010-06-17 00:19
  Built    : Fedora Project at 2010-04-23 11:24
  Committed: Panu Matilainen <pmatilai> at 2010-04-23

  Installed: yum-3.2.27-4.fc13.noarch at 2010-06-17 01:25
  Built    : Fedora Project at 2010-05-03 15:53
  Committed: Seth Vidal <skvidal at fedoraproject.org> at 2010-05-03
muelli@bigbox ~ $ 


How reproducible:
Upgrade from F12 to F13 using preupgrade. See it failing. Spend hours to figure out why networking and audio doesn't work. Find out that the kernel modules were deleted and the new kernel wasn't installed properly, i.e. the modules for the new kernel are all there but the boot menu doesn't offer the right version. Be amused that even the ext2 driver for mounting the boot partition is missing so that you can't even copy the new kernel onto the boot partition. Finally manage to copy the kernel, boot and try to reinstall the new kernel properly.

Steps to Reproduce:
1. yum reinstall kernel
2. 
3.
  
Actual results:
muelli@bigbox ~ $ sudo yum reinstall kernel
[sudo] password for muelli: 
Loaded plugins: auto-update-debuginfo, presto, priorities, refresh-packagekit
Existing lock /var/run/yum.pid: another copy is running as pid 30690.
Another app is currently holding the yum lock; waiting for it to exit...
  The other application is: yum
    Memory : 121 M RSS (500 MB VSZ)
    Started: Thu Jun 17 14:49:43 2010 - 01:42 ago
    State  : Sleeping, pid: 30690
Another app is currently holding the yum lock; waiting for it to exit...
  The other application is: yum
    Memory : 121 M RSS (500 MB VSZ)
    Started: Thu Jun 17 14:49:43 2010 - 01:44 ago
    State  : Sleeping, pid: 30690
Setting up Reinstall Process
Found 247 installed debuginfo package(s)
Enabling livna-debuginfo: rpm.livna.org for 13 - x86_64 - Debug
Enabling fedora-debuginfo: Fedora 13 - x86_64 - Debug
Enabling rpmfusion-nonfree-debuginfo: RPM Fusion for Fedora 13 - Nonfree - Debug
Enabling rpmfusion-free-updates-debuginfo: RPM Fusion for Fedora 13 - Free - Updates Debug
Enabling rpmfusion-nonfree-updates-debuginfo: RPM Fusion for Fedora 13 - Nonfree - Updates Debug
Enabling rpmfusion-free-debuginfo: RPM Fusion for Fedora 13 - Free - Debug
Enabling updates-debuginfo: Fedora 13 - x86_64 - Updates - Debug
Package kernel-2.6.33.5-124.fc13.x86_64 is allowed multiple installs, skipping
Nothing to do
muelli@bigbox ~ $ 

sudo yum reinstall kernel-2.6.33.5-124.fc13.x86_64


Expected results:
I expected yum to just reinstall the kernel properly, with all the post installation hooks...

Additional info:
yum remove kernel && yum install kernel is not an option.
yum downgrade kernel && yum install kernel doesn't work for the same reasons.
finding the RPM of the kernel, to then do a rpm -i $RPM manually, fails too:
muelli@bigbox ~ $ find /var/cache/yum/ -name '*kernel*' | wc -l
0

Comment 1 seth vidal 2010-06-17 16:05:28 UTC
So the issue is this, we don't have per-element transaction flag control in rpm. So there is no way to tell the transaction to 'reinstall this pkg' but don't remove any of the older ones, too.

assigning over to rpm - maybe they have a workaround?

Comment 2 James Antill 2010-06-18 04:29:05 UTC
n/m ... I've looked and I think it was to do with how we did the reinstalls initially (we had the remove+install, and the removals were probably leaking).

With a couple of tweaks it seems to work now.