Bug 189548

Summary: yum installs kernel-devel for wrong architecture (i586 rather than i686)
Product: [Fedora] Fedora Reporter: Peter Fales <redhat.com>
Component: yumAssignee: Jeremy Katz <katzj>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: katzj, sundaram
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: 2006-07-13 12:42:18 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 Peter Fales 2006-04-20 21:53:20 UTC
Description of problem:

  I'm doing a fresh install of FC5, followed by "yum update."  Yum
  wants to install the i686 version of 2.6.16-1.2096_FC5, but wants
  the i586 version of kernel-devel.

Version-Release number of selected component (if applicable):


How reproducible:  Very


Steps to Reproduce:
1.  Fresh install of FC5
2.  Run "yum update"
3.
  
Actual results:

 Packages offered include:

Installing:
 bind-config             i386       30:9.3.2-16.FC5  updates-released   50 k
     replacing  caching-nameserver.noarch 7.3-5.FC5
 kernel                  i686       2.6.16-1.2096_FC5  updates-released   13 M
 kernel-devel            i586       2.6.16-1.2096_FC5  updates-released  4.6 M


Expected results:

  Both kernel and kernel-devel should be i686

Additional info:

  This worked fine in FC3 and FC4

Comment 1 Seth Vidal 2006-04-20 23:00:47 UTC
send the output of these things:

cat /etc/rpm/platform

uname -a

yum list kernel\*

thanks


Comment 2 Peter Fales 2006-04-21 19:43:16 UTC
As requested:


[root@kickstart5 ~]# cat /etc/rpm/platform
i686-redhat-linux
[root@kickstart5 ~]# uname -a
Linux kickstart5.ih.lucent.com 2.6.15-1.2054_FC5 #1 Tue Mar 14 15:48:33 EST 2006
i686 i686 i386 GNU/Linux
[root@kickstart5 ~]# yum list kernel\*
Setting up repositories
base                                                                 [1/3]
base                      100% |=========================| 1.1 kB    00:00     
updates-released                                                     [2/3]
updates-released          100% |=========================|  951 B    00:00     
extras                                                               [3/3]
extras                    100% |=========================| 1.1 kB    00:00     
Reading repository metadata in from local files
Installed Packages
kernel.i686                              2.6.15-1.2054_FC5      installed       
kernel-devel.i686                        2.6.16-1.2096_FC5      installed       
Available Packages
kernel.i686                              2.6.16-1.2096_FC5      updates-released
kernel.i586                              2.6.16-1.2096_FC5      updates-released
kernel-debuginfo.i686                    2.6.16-1.2096_FC5      updates-released
kernel-debuginfo.i586                    2.6.16-1.2096_FC5      updates-released
kernel-devel.i586                        2.6.16-1.2096_FC5      updates-released
kernel-doc.noarch                        2.6.16-1.2096_FC5      updates-released
kernel-kdump.i686                        2.6.16-1.2096_FC5      updates-released
kernel-kdump-devel.i686                  2.6.16-1.2096_FC5      updates-released
kernel-smp.i586                          2.6.16-1.2096_FC5      updates-released
kernel-smp.i686                          2.6.16-1.2096_FC5      updates-released
kernel-smp-devel.i686                    2.6.16-1.2096_FC5      updates-released
kernel-smp-devel.i586                    2.6.16-1.2096_FC5      updates-released
kernel-xen0.i686                         2.6.16-1.2096_FC5      updates-released
kernel-xen0-devel.i686                   2.6.16-1.2096_FC5      updates-released
kernel-xenU.i686                         2.6.16-1.2096_FC5      updates-released
kernel-xenU-devel.i686                   2.6.16-1.2096_FC5      updates-released
[root@kickstart5 ~]# 

Comment 3 Peter Fales 2006-04-21 19:49:34 UTC
A couple additional notes:

1) The problem can be "repaired" using
      
      yum remove kernel-devel
      yum install kernel-devel
      yum update

   In my previous note (with the output of "yum list kernel\*" that fix has
   been made.  I'll have to do a fresh install to get back to the state where
   the i586 kernel-devel is installed.

2) I'm wondering if this is really an anaconda problem.   I thought I checked
   this before writing the bug report, but the i586 version of kernel-devel
   was actually installed by the kickstart.   So, if the i586 version of
   kernel-devel was already installed, maybe yum is doing the "right" thing by 
   updating to the newer i586 version.

Comment 4 Rahul Sundaram 2006-07-13 04:33:55 UTC
Yes, If yum finds a package previous installed with a architecture, it merely
updates that as this is arguably the most logical thing to do. While installing
a fresh package, it verifies the architecture and installs a appropriate package.

One could argue that yum should verify and fix any architecture issues even on
package updates but with multi architecture packages this might not be easy or
desierable. 

If you havent specified a architecture explicts in kickstart and Anaconda
installed a wrong kernel package, please open a new bug report against Anaconda
and refer to this report.

I will leave this report open for the package maintainer's decision on this. 

Comment 5 Jeremy Katz 2006-07-13 12:42:18 UTC
Yeah, I think that keeping to what's installed is almost certainly the "right"
thing so that people can more easily tailor a filesystem for, eg, nfsroot usage
or things of that nature.

Comment 6 Peter Fales 2006-07-13 12:59:14 UTC
Note that this is a completely fresh install (no "previously installed"
packages).   I agree that it's not yum's responsibility to fix the problem, so
maybe this bug should be tagged to anaconda instead of yum.   Why is the
kickstart installing the 686 version of kernel and the 586 version of kernel-devel?

I didn't realize there was a way to specify the architecture in the kickstart
file   (how do I do that??) but shouldn't it default to using 686 for everything
if that't the actual hardware it's running on?

Comment 7 Jeremy Katz 2006-07-13 13:04:34 UTC
You can specify the arch in kickstart (name.arch, just like on the yum command
line).  And there was a bug in anaconda in FC5 where this situation could
happen, but we fixed it a month or two ago.

Comment 8 Peter Fales 2006-07-13 16:13:43 UTC
Do you have a reference for the bug mentioned in comment 7?  It's not clear what
is meant by "this situation" getting fixed, but it sounds like it could be related.