From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.2) Gecko/20040428 Description of problem: This bug may also exist under ia32, but, I have not yet tested. When doing an rpm -Fvh kernel on a system that has both kernel and kernel-smp installed, the kernel rpm is upgraded as expected. However, if you then rpm -q kernel-smp, you'll note that you no longer have an smp kernel installed (and, such, cannot then rpm -Fvh kernel-smp). Version-Release number of selected component (if applicable): rpm-4.2.1-0.30 How reproducible: Always Steps to Reproduce: 1.Install an old kernel, kernel-smp. Remove any newer kernels 2. rpm -Fvh kernel-newversion.rpm 3. rpm -q kernel-smp. Kernel-smp is no longer installed. Actual Results: kernel-smp is silently removed. Expected Results: kernel is upgraded, but kernel-smp is not touched. Additional info: If, instead, you first rpm -Fvh kernel-smp, kernel-smp is freshened, and kernel is not touched (it stays at the old version). You can then rpm -Fvh kernel. At the very least, a warning should be printed out that kernel-smp will be removed.
Kernels should be installed with -i, not -F or -U. The kernel-smp package carries a Provides: kernel = V with V == version that causes the kernel-smp package to be erased when upgrading.
In this case, the freshen should either not be allowed to complete as it affects another package, or a warning should be generated. Other packages should not just be silently removed with no indication given to the user. If -F/-U should not be used for the kernel, then rpm should not allow this (and, in fact, after doing -i on test systems, kernels are usually pushed out to other systems using a -F). This new behavior is changed from Redhat 7.3, where a freshen of the kernel did not remove kernel-smp.