[PlanetCCRMA] Kernel Panic

Fernando Pablo Lopez-Lezcano nando@ccrma.Stanford.EDU
Tue Dec 3 19:43:01 2002

> 1) The motherboard I'm using in this case is an Asus A7V266-E. It has an
> onboard chipset EIDE controller, but also has a secondary ATA-100 controller
> also
> 2) My system hard drive is attached to the chipset controller\
> 3) With the standard RH 7.3 kernel the drive is seen as
> Partition check:
> hda: hda1 hda2 < hda5 hda6 hda7 hda8 >
> and then boots fine.
> 4) With the Planet 2.4.19.ll kernel the drive is seen as:
> hde: hde1 hde2 < hde5 hde6 hde7 hde8 >
> and then fails to boot saying that it can't find hde to boot from.

To be expected. 

> 5) The grub config file looks like:
> default=1
> timeout=10
> splashimage=(hd0,6)/boot/grub/splash.xpm.gz
> title Red Hat Linux (2.4.19-1.ll)
>         root (hd0,6)
>         kernel /boot/vmlinuz-2.4.19-1.ll ro root=/dev/hda7
> title Red Hat Linux (2.4.18-3)
>         root (hd0,6)
>         kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda7
> title DOS
>         rootnoverify (hd0,0)
>         chainloader +1
> I found that if I changed the 2.4.19.ll boot line to:
>         kernel /boot/vmlinuz-2.4.19-1.ll ro root=/dev/hde7
> then the machine will boot, but unfortunately can't find the swap partition
> at hda5.

Yes, for that to be fixed you would have to change /etc/fstab. But then
you would not be able to boot the original redhat kernel. Yuck! It may
be possible to have two swap entries in fstab and one or the other would
get ignored. Worth trying, I guess. Edit fstab cautiously :-)

>    The Redhat guys suggested that we look at how the kernel was configured
> with respect to how it sees additional EIDE controllers. They make the point
> that there is an option called "CONFIG_BLK_DEV_OFFBOARD" that changes the
> order the system sees the onboard vs. off-board controllers. If your kernel
> sees the off-board controller before it sees the chipset, then the
> misoperation actually makes sense.

That is probably correct. Regretfully it appears that I have configured
the kernel "correctly" in the sense that I am not altering the order and
on-board controllers should be assigned the first (ie: hda/b/c/d) set of
drive letters. Actually I am using the original redhat configuration as
the base configuration for my kernels. 

>    While this makes sense to me, I have also run your kernel on the A7V133,
> which also has a second ATA controller, so it may be a chipset specific
> issue.

Maybe the problem is that for some reason the new kernel thinks that the
off-board controller is actually on-board. 

I just found (part of the BootPrompt-HOWTO) a kernel option you could
try adding to the end of the 2.4.19 kernel line in grub.conf:
ide0=noprobe, it might have the desired effect of ignoring what the new
kernel considers is the first controller and using only the second
(which is actually the on-board ide controller). I have not tried it.

Very good detective work!!
-- Fernando