PowerEdge 1750 and megaraid2 usage on install

Ben bda20 at cam.ac.uk
Mon Mar 7 03:28:01 CST 2005

On Sun, 6 Mar 2005, Andrew Mann wrote:

>   The easy way to get this done is to install with the megaraid driver 
> and then edit /etc/modules.conf to alias megaraid2 instead of megaraid, 
> and finally rebuild the initrd (the mkinitrd program will take care of 
> that simply).

Changing /etc/modules.conf and then installing a new kernel via up2date 
should accomplish the same thing, yes?  Running up2date is part of my build 
process, so this should be fairly easy to do.

>   You could also modify the pcitable inside the initrd.img (a gzipped image 
> file) on the http server to reference megaraid2 instead of megaraid.

Oddly, with my PE2850 servers and their 4e/Di controllers all I did was add 
the following line to the pcitable file on the driver floppy and that 
ensured that the megaraid2 driver was loaded when the machine made contact 
with the HTTP kickstart server:

0x1028  0x0013  "megaraid2"     "Dell Computer Corporation|PowerEdge Expandable RAID controller 4e/Si 4e/Di"

I was hoping the same technique would work for the 4/Di in the 1750.  Now I 
look at my reference for doing this (kind of), it was your email:


I can't seem to fine initrd.img in my installation source.  Do you mean one 
of these:

RedHat/base/stage2.img ?

>   The bootdisk doesn't usually contain the scsi drivers, those are loaded 
> off the initrd.img from the final installation media.   You'll need put 
> "megaraid2" instead of "megaraid" in the pcitable file ultimately, but you 
> shouldn't need to add any lines for the 1750, just alter the existing lines 
> that tell map the controller in the 1750 to the megaraid driver.

As I said, I was hoping that adding the entries to the pcitable on the 
driver floppy would accomplish the same thing.  I currently can't find an 
initrd.img containing a pcitable file on the installation point.

> You should be safe changing all of the "megaraid" references to 
> "megaraid2" in this file.  Again the file you want to change is located 
> in the initrd.img and not on the kickstart.

It's probably more sensible to do this (as I'll be doing a lot of 
installations).  I'll make the changes as per your instructions again (also 
adding in the 4e/Di lines for the 2850) as this will mean I don't need a 
fiddled-with driver floppy.

>   I would guess that the reason the kickstart options don't work the way 
> you expect them to is because they're either processed before the initrd.img 
> is loaded (in which case the megaraid2 driver isn't available), or they're 
> processed after the automatic mapping using the initrd.img pcitable, in 
> which case the "megaraid" driver has already had a chance to claim the 
> device and so the megaraid2 driver has nothing to claim.

That's what I thought, after some thought!

>   The pcitable is used to map a PCI ID to a driver to attempt to load, and 
> is not used by the driver to determine if it handles a device.  If you map a 
> completely incompatable device and driver together, the driver will still 
> find no devices it handles and wont remain loaded.  For RHEL3 Update 3, the 
> "megaraid2" driver knows how to handle the 2850 Perc 4 controller, while the 
> "megaraid" driver doesn't.  The pcitable file doesn't contain a mapping 
> though, so the "megaraid2" driver is never tried at all.  Once you get the 
> driver attempted ('device scsi megaraid2' in the kickstart probably does 
> that) everything works fine.

I'll try doing a normal install of AS3 u4 with the megaraid driver, change 
the /etc/modules.conf and upgrade the kernel and see if that does the 
necessary.  If it does I'll embark on experiements with the initrd.img 
pcitable file, if I can find it!

Thanks for the help, it's much appreciated.

Unix Support, MISD, University of Cambridge, England
Plugger of wire, typer of keyboard, imparter of Clue
         Life Is Short.          It's All Good.

More information about the Linux-PowerEdge mailing list