Kernel Panic

From Atomicorp Wiki
Revision as of 17:22, 2 February 2011 by Mshinn (Talk | contribs)

Jump to: navigation, search

Contents

Overview

You encounter a Kernel panic on boot up with an ASL kernel.

Cause

This is almost always caused by a kernel design change. A module required for the system to see your disks is not being loaded in the initrd, which will cause a kernel panic. Module names change in newer kernels, and your distribution is likely configured to use the older and no longer used module names. This is a universal design condition of all Linux kernels and not specific to ASL kernels.

Diagnostics

Send the output from cat /etc/modprobe.conf and lspci to support


Possible fixes (HARDWARE DEPENDENT)

Example modprobe.conf's from other systems

3ware Inc 9xxx-series SATA-RAID
Intel Corporation 82801FB/FBM/FR/FW/FRW
nVidia Corporation MCP51 IDE (rev f1)
Symbios Logic 53c1030 (vmware)


Step 1) Update your modprobe.conf

 vim /etc/modprobe.conf

Step 2) regenerate your initrd.img

 /sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install 2.6.23.1-2.art 

Step 3) Set the kernel to boot into your DEFAULT OS KERNEL. NOT THE ASL KERNEL. This is defined by the "default=" value, starting at 0 for the first position. This will set the system to fail "safe" back into the working kernel, without requiring you to power cycle or otherwise cold boot the system if there is a problem.

 vim /etc/grub.conf

example:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/md0
#          initrd /initrd-version.img
#boot=/dev/sda1
default=1
timeout=5
serial --unit=0 --speed=57600
terminal --timeout=5 serial console
title CentOS (2.6.23.1-3.art)
       root (hd0,0)
       kernel /vmlinuz-2.6.23.1-3.art ro root=/dev/md0 console=tty0 console=ttyS0,57600n8 selinux=0 noapic
       initrd /initrd-2.6.23.1-3.art.img
title CentOS (2.6.9-42.0.10.EL)
       root (hd0,0)
       kernel /vmlinuz-2.6.9-42.0.10.EL ro root=/dev/md0 console=tty0 console=ttyS0,57600n8
       initrd /initrd-2.6.9-42.0.10.EL.img


Step 4) Set the "panic" flag on the ASL kernel line

  title CentOS (2.6.23.1-3.art)
       root (hd0,0)
       kernel /vmlinuz-2.6.23.1-3.art ro root=/dev/md0 console=tty0 console=ttyS0,57600n8 selinux=0 panic=5
       initrd /initrd-2.6.23.1-3.art.img

Step 5) Set the ASL kernel to boot once, with the grub command

[root@www2 ~]# grub
grub> savedefault --default=0 --once
grub> quit

Step 6) Reboot

Personal tools