PDA

View Full Version : centos kernel update with raid controller (kernel panic)


blunt
29th October 2007, 17:49
I have followed howto forge tutorial on perfect setup with centos and openvz, but used centos 5 instead of 4.4, used LVM for the partitions and installed a driver disk formy highpoint 2300 raid controller. all worked well.

Highpoint has drivers on their site, from where I downloaded the necessary files to create a driver disk, needed during installation.

I was able to load de drivers in setup, created lvm for my sda (double sata disk - raid1 by highpoint controller) and installed with no problem.

When I try to 'yum upgrade -y' the kernel installs, bue i cannot startup centos with it. I also tried to install an openvz kernel with no sucess. I followed highpoint tips on installing to an existing kernel, but had no success.

I always get kernel panic and volumes not found during boot...

In my driver disk, I have a rr3210_00.ko driver that highpoint mentions I need to:
1 - copy to /lib/modules/<kernel version>/kernel/drivers/scsi
2 - depmod -a <kernel version>
3 - echo “modprobe rr2310_00” > /etc/init.d/hptdriver
4 - chmod 755 /etc/init.d/hptdriver
5 - ln –sf /etc/init.d/hptdriver /etc/rc.d/rc3.d/S01hptdriver
6 - ln –sf /etc/init.d/hptdriver /etc/rc.d/rc4.d/S01hptdriver
7 - ln –sf /etc/init.d/hptdriver /etc/rc.d/rc5.d/S01hptdriver

i've done this, but the problem remains...

I don't know what i should try to do...If anyone has any ideas, please suggest...

I have also tried creating a new initrimg. here is the output generated by my attempt of getting the openvz kernel working...but it still doesn't. any help appreciated.

the driver is rr2310_00 an is there.

[root@server ~]# rm -f /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/s csi/sata_mv.ko
[root@server ~]# rm /boot/initrd-2.6.18-8.1.15.el5.028stab047.1.img
rm: remove regular file `/boot/initrd-2.6.18-8.1.15.el5.028stab047.1.img'? y
[root@server ~]# /sbin/mkinitrd -v -f --preload scsi_mod --preload sd_mod --with=rr2310_00 --builtin=sata_mv /boot/initrd-2.6.18-8.1.15.el5.028stab047.1.img 2.6.18-8.1.15.el5.028stab047.1
Creating initramfs
Looking for deps of module scsi_mod
Looking for deps of module sd_mod: scsi_mod
Looking for deps of module uhci-hcd
Looking for deps of module ohci-hcd
Looking for deps of module ehci-hcd
Looking for deps of module ext3: jbd
Looking for deps of module jbd
Looking for driver for device sda2
Looking for deps of module pci:v00001103d00002300sv000011ABsd000011ABbc01sc00 i00: scsi_mod rr2310_00
Looking for deps of module rr2310_00: scsi_mod
Looking for deps of module sata_nv: scsi_mod libata
Looking for deps of module libata: scsi_mod
Looking for deps of module ide-disk
Looking for deps of module dm-mod
Looking for deps of module dm-mirror: dm-mod
Looking for deps of module dm-zero: dm-mod
Looking for deps of module dm-snapshot: dm-mod
Using modules: /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/s csi/scsi_mod.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/s csi/sd_mod.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/u sb/host/uhci-hcd.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/u sb/host/ohci-hcd.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/u sb/host/ehci-hcd.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/fs/jbd/jb d.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/fs/ext3/e xt3.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/updates/rr2310_0 0.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/s csi/libata.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/s csi/sata_nv.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/m d/dm-mod.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/m d/dm-mirror.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/m d/dm-zero.ko /lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/m d/dm-snapshot.ko
/sbin/nash -> /tmp/initrd.Ns3261/bin/nash
/sbin/insmod.static -> /tmp/initrd.Ns3261/bin/insmod
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ scsi/scsi_mod.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/scsi_mod.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ scsi/sd_mod.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/sd_mod.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ usb/host/uhci-hcd.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/uhci-hcd.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ usb/host/ohci-hcd.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/ohci-hcd.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ usb/host/ehci-hcd.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/ehci-hcd.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/fs/jbd/j bd.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/jbd.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/fs/ext3/ ext3.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/ext3.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/updates/rr2310_ 00.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/rr2310_00.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ scsi/libata.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/libata.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ scsi/sata_nv.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/sata_nv.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ md/dm-mod.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/dm-mod.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ md/dm-mirror.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/dm-mirror.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ md/dm-zero.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/dm-zero.ko' [elf32-i386]
copy from `/lib/modules/2.6.18-8.1.15.el5.028stab047.1/kernel/drivers/ md/dm-snapshot.ko' [elf32-i386] to `/tmp/initrd.Ns3261/lib/dm-snapshot.ko' [elf32-i386]
/sbin/lvm.static -> /tmp/initrd.Ns3261/bin/lvm
/etc/lvm -> /tmp/initrd.Ns3261/etc/lvm
`/etc/lvm/lvm.conf' -> `/tmp/initrd.Ns3261/etc/lvm/lvm.conf'
Adding module scsi_mod
Adding module sd_mod
Adding module uhci-hcd
Adding module ohci-hcd
Adding module ehci-hcd
Adding module jbd
Adding module ext3
Adding module rr2310_00
Adding module libata
Adding module sata_nv
Adding module dm-mod
Adding module dm-mirror
Adding module dm-zero
Adding module dm-snapshot

please, any suggestions are welcome...

falko
30th October 2007, 17:51
I always get kernel panic and volumes not found during boot...

That sounds as if you need a ramdisk for your kernel.

blunt
30th October 2007, 21:10
thanks alot for your reply falko.

you're the first one to reply to me after posting in five different foruns a few days ago...

I would really appreciate a an answer that is a little more concrete...like how should i do to create a ramdisk? Or please point me to a place where I can read or follow a guide.

And by the way, this seems like a good place to praise you for some of the best tutorials I have read, and used several times, found right here in HowtoForge. Thank you for that :)

falko
31st October 2007, 17:39
Take a look at http://www.howtoforge.com/kernel_compilation_centos
It shows how to create a ramdisk (with mkinitrd). :)

blunt
31st October 2007, 21:07
Well I haven't tried it yet, but i already read through your howto.

I have a few questions:

1 - I used mkinitrd when I tried to get my kernel working. That didn't work. It didn't work because I didn't compile it from source and use my old config? Or was it because I used wrong flags? When I follow your howto, should I use mkinitrd with the same flags I tried?

2 - About my driver, What do I need to do to include it in kernel compilation? Is that needed? If it isn't, how do I include it? The way I was doing it was right or wrong?

I think that for now, this are my doubts.

Thanks again for your help falko.

By the way, I thought that creating a ramdisk was through mkinitrd, but since I used it when I tried to get the kernel working and still you mentioned it in your reply, I thought it would be something else :)

falko
1st November 2007, 19:12
1 - I used mkinitrd when I tried to get my kernel working. That didn't work. It didn't work because I didn't compile it from source and use my old config? Or was it because I used wrong flags? When I follow your howto, should I use mkinitrd with the same flags I tried?

It doesn't matter what config you use. Did you get any errors?

blunt
1st November 2007, 19:31
the output of the mkinitrd is in my first post...

it did not show any errors...

falko
2nd November 2007, 18:08
Oh, I didn't see this... :o
If there's no error, can you see the new ramdisk in /boot afterwards?

blunt
2nd November 2007, 18:28
yes, I can see and I can boot it...

the problem is the I get a kernel panic... (explained in my first post)

I don't know if is there any other output useful that I can post here...

uniacid
9th November 2007, 19:08
blunt,
I am facing this same issue with CentOS 5 and a highpoint raid card (2310) once I upgrade to the newest kernel (2.6.18-8.1.15.el5).

Once it upgrades and I load that kernel it tries to boot up and load up the Raid volume but it cannot find it and goes into kernal panic mode.

Any ideas?

uniacid
9th November 2007, 19:17
I am facing this same exact issue with CentOS 5 and a highpoint raid card (2310), once I upgrade the kernel to the newest (2.6.18-8.1.15.el5) and try to boot it up it will fail when looking to boot up the raid volume as it says it cannot be found and then proceeds to go into kernel panic mode.

Any ideas on how to resolve this? Would a custom compiled kernel with the raid drivers be necessary?

blunt
9th November 2007, 22:28
Well uniacid, it seems that you're lucky.

After struggling in 5 foruns for an answer that no one could provide to me, I started trying something flako mentioned: compiling from source...

After a few days of banging my head on the wall, I managed to get it to work...I don't know if this is going to work for you, but if it does, I'll save you a lot of time...It would have been nice if I could have gotten the same quick reply. :)

well here it goes, follow these steps and you should be fine:

get the kernel source you wish, I believe that finding a kernel like 2.6.18 instead of 2.6.18.3 is better because it seems that applying some patches may fail if not using the base version of the kernel (can't remember the right term for it...). i will be using 2.6.18 because i'll patch it with the openvz stable 2.6.18 release.

every command I typed was made on folder /root

# if you installed the server version of centos5 you won't have these, and you need them
yum install *ncurses*
yum install gcc

# unzip stuff and make a symlink to make it easier on the eyes :)
tar xjf linux-2.6.18.tar.bz2
ln -s linux-2.6.18 linux
cd linux

make clean && make mrproper

# copy kernel cfg from your actual kernel
cp /boot/config-`uname -r` ./.config

# the patch of openvz must be in the folder of the kernel source
gzip -dc patch-ovz028stab047.1-combined.gz | patch -p1

# this is only needed if you patched the kernel with opnvz
wget http://sysadminday.org.ru/2.6.18-ovz028stab045/ovz028stab045_combined.patch
patch -iovz028stab045_combined.patch -p1

Now for the raid controller...You can get the sources form the highpoint site...

cd .. # (back to /root)
tar -zxvf rr231x_0x-linux-src-v2.1-081507-0256.tar.gz
cd rr231x_0x-linux-src-v2.1/product/rr2310pm/linux/
make patchkernel KERNELDIR=/root/linux KERNEL_VER=2.6

cd /root/linux
make menuconfig

activate the controller in the .config...
Select "Device Drivers --->" and press enter.
Select "SCSI device support", then press 'Y' to make it built-in.
Select "SCSI disk support" then press 'Y' to make it build-in.
Select "SCSI low-level drivers --->" and press enter.
Select "HighPoint RocketRAID 2310 support" and press 'Y'.

make all && make modules_install && make install

done :)
hope it helps

uniacid
12th November 2007, 15:28
Thanks a bunch! I have been frustrated trying out different raid cards and not getting support but this Highpoint card has been the best one so far.

Luckily I didn't have to run through all those steps for some reason as when I was building the new kernel I must have used my old config and I assume in there it had the directive to load the raid drivers from my floppy (fd0) and so it did, I was amazed it actually worked this way and it seems to be alright now.

I'm sure I will have to come back to these steps though if I ever have to uipgrade remotely.