Bug 124562 - Can't install a disk driver diskette - RHEL 3 Update 2 on x86_64
Can't install a disk driver diskette - RHEL 3 Update 2 on x86_64
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: anaconda (Show other bugs)
x86_64 Linux
medium Severity medium
: ---
: ---
Assigned To: Jeremy Katz
Mike McLean
Depends On:
  Show dependency treegraph
Reported: 2004-05-27 10:47 EDT by Jack Hammer
Modified: 2007-11-30 17:07 EST (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2004-05-27 15:18:29 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Jack Hammer 2004-05-27 10:47:24 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4)

Description of problem:
When you build a driver diskette ( in my case, it is the ips driver
diskette ) for x86_64, there are two kernels to include in modules.cgz
, 2.4.21-15.EL and 2.4.21-15.ELsmp. 

Normally, during a RedHat Linux install, the booted kernel ( from CD 1
) would load the 2.4.21-15.EL ( the uni-processor version ) driver to
use during the install.

From my investigations, it appears that the RHEL 3 Update 2 x86_64 CD
is booting a kernel that was built for ia32e, not x86_64.
1.) If, for the 2.4.21-15.EL kernel, I use a driver that was built for
ia32e, it loads fine and the install goes OK.  However, the driver
will fail for the installed uni-processor kernel ( after installation
), since it has installed a kernel appropriate for x86_64 and a driver
that is for ia32e.
2.) If I put the right driver ( built for x86_64 ) on the diskette, it
will fail loading during the Linux install and the driver diskette is
completely ignored.
I have built the driver diskettes ( for RHEL 3 Update 2 ) and tested
successfully on intel boxes ( i686 kernels ) and 32 bit AMD ( athlon
kernels ) and they are all fine.  Only the x86_64 architecture CD's
have this problem.  

This also appears to work for an ia32e server, since the same kernel
used during install is what gets installed.

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

How reproducible:

Steps to Reproduce:
1. Simply attempt an install on an x86_64 box, using a disk driver
update diskette

Actual Results:  If the driver diskette is using the correct x86_64
kernels, it will fail trying to lad the driver during install (
because it is not running an x86_64 kernel )

Expected Results:  It should work like all the other architectures.

Additional info:

I can supply ips driver diskettes built both ways ( one with the
proper uni-processor kernel and one with the ia32e kernel in
modules.cgz ) if desired.

That would require that you have a ServeRAID adapter. You do not need
to be installing to drives on the ServRAID adapter to see this.

If we offer a new ServeRAID adapter which requires an updated driver
in order to work, you would be totally unable to install on a system
with that adapter.
Comment 1 Jeremy Katz 2004-05-27 15:18:29 EDT
The boot kernel is the ia32e kernel since that works on both x86_64
and EM64T systems.  To work with this and update a driver on the
system, you want to use the slightly newer and better driver disk
format that will let you put ia32e and x86_64 drivers in the same
modules.cgz.  The differences from a version 0 driver disk to a
version 1 driver disk are:
1) Instead of having /rhdd-6.1, you have /rhdd
2) Instead of having module foo.o as $(uname -r)/foo.o, you have it as
$(uname -r)/$arch/foo.o

Note You need to log in before you can comment on or make changes to this bug.