[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#293569: Add megaraid to /etc/mkinitrd/modules doesn't work out



Hi Horms,

Some more background... The machines I'm trying to install the
2.6.8-2-686-smp Debian kernel package are Dell PowerEdge 1850 with a
PERC 4e/Si RAID Controller model with one Hitachi 73,2GB SCSI Ultra320
HotSwap HD factory configured in RAID0.

I have used the sarge_i386_netinst.iso serial 20050127 to install the
machines and the installer 2.6.8 kernel image (linux26 or expert26)
fails to detect the disk (RAID controller) then I've installed the
machine with the kernel 2.4.27 image (linux or expert), this installer
image succeed to detect de RAID controller using the megaraid2 driver
correcting the problem mentioned on
http://lists.debian.org/debian-boot/2004/11/msg00742.html

Then I've choosed to install the 2.6.8-2-i386 kernel image of the
installer and got the 'kernel panic', so I've re-installed the machine
using both kernel 2.4.27 images to detect de RAID to install and the
installation kernel. And finally got the same problem reported by
Robin when trying to install the 2.6.8-2-686-smp kernel image 2.6.8-13
release after the machine was booted with 2.4.27-2-686-smp kernel
image.

I have done the tests you suggested with *no* success, so let's go to
the results and logs:

BEFORE actions:
~# cat /etc/mkinitrd/modules
# /etc/mkinitrd/modules: Kernel modules to load for initrd.
#
# This file should contain the names of kernel modules and their arguments
# (if any) that are needed to mount the root file system, one per line.
# Comments begin with a `#', and everything on the line after them are ignored.
#
# You must run mkinitrd(8) to effect this change.
#
# Examples:
#
#  ext2
#  wd io=0x300
scsi_mod
megaraid
~# 
~# mount /boot/initrd.img-2.6.8-2-686-smp /mnt/ -o ro,loop
~# cat /mnt/loadmodules 
modprobe -k  scsi_mod
modprobe -k  megaraid
modprobe -k  vesafb > /dev/null 2>&1
modprobe -k  fbcon 2> /dev/null
modprobe -k  unix 2> /dev/null
modprobe -k  megaraid2
modprobe -k  sd_mod

Booted the machine and got the kernel panic.

Then I've decided to do another test adding the sd_mod to put the
modules in the same subset order the mkinitrd do when we don't have
modules in the /etc/mkinitrd/modules file.
--
Without modules in the /etc/mkinitrd/modules the mkinitrd does, it
seems to do not need scsi_mod:

modprobe -k  vesafb > /dev/null 2>&1
modprobe -k  fbcon 2> /dev/null
modprobe -k  unix 2> /dev/null
modprobe -k  megaraid2
modprobe -k  sd_mod
--

BEFORE actions:
~# cat /etc/mkinitrd/modules
# /etc/mkinitrd/modules: Kernel modules to load for initrd.
#
# This file should contain the names of kernel modules and their arguments
# (if any) that are needed to mount the root file system, one per line.
# Comments begin with a `#', and everything on the line after them are ignored.
#
# You must run mkinitrd(8) to effect this change.
#
# Examples:
#
#  ext2
#  wd io=0x300
scsi_mod
megaraid
sd_mod
engel:~# dpkg -i
/mirrors/debian/pool/main/k/kernel-image-2.6.8-i386/kernel-image-2.6.8-2-686-smp_2.6.8-13_i386.deb
Selecionando pacote previamente não selecionado kernel-image-2.6.8-2-686-smp.
(Lendo banco de dados ... 23139 arquivos e diretórios atualmente instalados.)
Descompactando kernel-image-2.6.8-2-686-smp (de
.../kernel-image-2.6.8-2-686-smp_2.6.8-13_i386.deb) ...
Instalando kernel-image-2.6.8-2-686-smp (2.6.8-13) ...
/usr/sbin/mkinitrd: add_modules_dep_2_5: modprobe failed
FATAL: Module megaraid2 not found.
WARNING: This failure MAY indicate that your kernel will not boot!
but it can also be triggered by needed modules being compiled into
the kernel.
/initrd.img does not exist. Installing from scratch, eh?
Or maybe you don't want a symbolic link here. Hmm? Lets See.
/vmlinuz does not exist. Installing from scratch, eh?
Or maybe you don't want a symbolic link here. Hmm? Lets See.
Searching for GRUB installation directory ... found: /boot/grub .
Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .
Searching for splash image... none found, skipping...
Found kernel: /vmlinuz-2.6.8-2-686-smp
Found kernel: /vmlinuz-2.4.27-2-686-smp
Updating /boot/grub/menu.lst ... done

~# mount /boot/initrd.img-2.6.8-2-686-smp /mnt/ -o ro,loop
~# cat /mnt/loadmodules 
modprobe -k  scsi_mod
modprobe -k  megaraid
modprobe -k  sd_mod
modprobe -k  vesafb > /dev/null 2>&1
modprobe -k  fbcon 2> /dev/null
modprobe -k  unix 2> /dev/null
modprobe -k  megaraid2

Then we've got again the kernel panic. 

I have no logs because the kernel doesn't mount anything so I 'hand
paste' what we got from the screen, it is also not possible to page up
the screen because the machine freezes.
...
ACPI: (supports S0 S4 S5)
RAMDISK: cramfs filesystem found at block 0
RAMDISK: Loading 4688 blocks [1 disk] into ram disk... done.
VFS: Mounted root (cramfs filesystem) readonly.
Freeing unused kernel memory: 168k freed
initrd-tools: 0.1.77
SCSI subsystem initiailized
vesafb: probe of vesafb0 failed with error -6
NET: Registered protocol family 1
FATAL: Module megraid2 not found.
SGI XFS with ACLs, security attributes, realtime, large block numbers,
no debug enabled
SGI XFS Quota Management subsystem
pivot_root: No such file or directory
/sbin/init: 431: cannot open dev/console: No such file
Kernel panic: Attempted to kill init!

I've noticed that the screen log is the same in all attempts of
modifying the initrd.

I also try to compile/package (make-kpg) a kernel with the same config
of the Debian kernel package but without initrd and with the necessary
three modules (scsi_mod, megraid, sd_mod) builted in + xfs/ext3/ext2
to see if the kernel 2.6.8 megaraid driver works with RAID controller
PERC 4e/Si. Then let you know.

-- 
Martin Alain Kretschek              e-mail: martinalain@gmail.com




On Wed, 9 Feb 2005 17:33:18 +0900, Horms <horms@debian.org> wrote:
> On Tue, Feb 08, 2005 at 11:07:04AM -0200, Martin Alain Kretschek wrote:
> > Hi,
> >
> > I've tried to add megaraid to /etc/mkinitrd/modules but still doesn't work out
> >
> > I've modified the /etc/mkinitrd/modules as sugested by Horms...
> >
> > ~# cat /etc/mkinitrd/modules
> > # /etc/mkinitrd/modules: Kernel modules to load for initrd.
> > #
> > # This file should contain the names of kernel modules and their arguments
> > # (if any) that are needed to mount the root file system, one per line.
> > # Comments begin with a `#', and everything on the line after them are ignored.
> > #
> > # You must run mkinitrd(8) to effect this change.
> > #
> > # Examples:
> > #
> > #  ext2
> > #  wd io=0x300
> > megaraid
> >
> > Then I've installed the kernel-package for 686-smp (I used my
> > machine's mirror (apt-move generated)  to avoid new dowload, I've
> > checkeout and this is the last kernel-image package available):
> >
> > ~# dpkg -i /mirrors/debian/pool/main/k/kernel-image-2.6.8-i386/kernel-image-2.6.8-2-686-smp_2.6.8-13_i386.deb
> > Selecting previously deselected package kernel-image-2.6.8-2-686-smp.
> > (Reading database ... 23224 files and directories currently installed.)
> > Unpacking kernel-image-2.6.8-2-686-smp (from
> > .../kernel-image-2.6.8-2-686-smp_2.6.8-13_i386.deb) ...
> > Setting up kernel-image-2.6.8-2-686-smp (2.6.8-13) ...
> > /usr/sbin/mkinitrd: add_modules_dep_2_5: modprobe failed
> > FATAL: Module megaraid2 not found.
> > WARNING: This failure MAY indicate that your kernel will not boot!
> > but it can also be triggered by needed modules being compiled into
> > the kernel.
> > Searching for GRUB installation directory ... found: /boot/grub .
> > Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .
> > Searching for splash image... none found, skipping...
> > Found kernel: /vmlinuz-2.6.8-2-686-smp
> > Found kernel: /vmlinuz-2.4.27-2-686-smp
> > Updating /boot/grub/menu.lst ... done
> >
> > So I've checked out mkinitrd works as expected:
> >
> > ~# mount /boot/initrd.img-2.6.8-2-686-smp /mnt/ -o ro,loop
> > ~# cat /mnt/loadmodules
> > modprobe -k  megaraid
> > modprobe -k  vesafb > /dev/null 2>&1
> > modprobe -k  fbcon 2> /dev/null
> > modprobe -k  unix 2> /dev/null
> > modprobe -k  megaraid2
> > modprobe -k  sd_mod
> > ~# cat /mnt/linuxrc.conf
> > DELAY=0
> > BUSYBOX=
> > FSTYPES=ext3,ext2,xfs,cramfs
> > IDE_CORE=ide-mod
> > VERSION=0.1.77
> >
> > Maybe the problem is the order of modules on loadmodules as we can see
> > on loadmodules file megaraid is the first module and it should be just
> > before megaraid2 (that won't load because it doesn't exist on kernel
> > 2.6.8) is this correct or the order doesn't matter?
> 
> I don't think the order is that important.
> Though perhaps megaraid doesn't support your card,
> or perhaps it needs something else.
> 
> Ok, I just checked, yes, it seems to need scsi_mod.
> scsi_mod doesn't seem to need anything else.
> So could you try adding scsi_mod before megaraid
> in /etc/mkinitrd/modules
> 
> >
> > Then I've boot the machine and get the expected "Kernel Panic".
> 
> Bother.
> 
> If it fails again could you please paste the boot log like you
> did in your original post? That information is often quite
> useful.
> 
> --
> Horms
>



Reply to: