[H-GEN] Changing IDE HDD Controller Drama

Christopher Biggs listjunkie at pobox.com
Tue Mar 22 16:21:35 EST 2005


"De Crow" <crowaust at hotmail.com> moved upon the face of the 'Net and spake thusly:

> Any ideas on how to fix [inconvenient ordering of ATA controllers]?  
> BIOS still lists the drives in the same
> order, not this new order, so I'm thinking that it's a Linux/GRUB or
> something glitch?

By giving the appropriate kernel command-line parameters you can
re-arrange the kernel's ordering of ATA controllers, at least for
those controlled by the standard ata driver.   

Save off your boot messages (maybe boot with a serial console, or boot
using "init=/bin/bash" to avoid having the system hang when it can't
fsck its (misnamed) root partiton), and inspect the boot trace to
determine the IO-port locations of the various ATA controllers.

Section 7.1 of the BootPrompt HOWTO ought to contain some information
that will assist you.

I suspect the root cause of this issue is that enumeration of ideN
devices will depend on the order in which the device-driver modules
are loaded, that is the first controller whose drivers are loaded will
claim ide0-1, and so forth.  

Since debian uses an "everything is a module" approach (loading
modules from an initial ram disk at boot-time) it's possible to have a
RAID driver get loaded before the standard driver.  I had a similar
issue once where I needed to prevent debian auto-loading a driver that I
did not wish to be loaded---the hardware was present, but faulty.  Two
solutions immediately come to mind: 

          * build a custom kernel with your ide drivers static-linked 
          * build a custom initrd (using the initrd-tools package) that 
            manually loads the offending modules in your chosen order.


--cjb





More information about the General mailing list