[CentOS] kernel panic/abort during boot

fred smith fredex at fcshome.stoneham.ma.us
Thu Dec 22 04:14:05 UTC 2011


On Wed, Dec 21, 2011 at 08:30:23PM -0700, Corey Henderson wrote:
> On 12/21/2011 8:23 PM, fred smith wrote:
> > On Wed, Dec 21, 2011 at 07:56:51PM -0700, Corey Henderson wrote:
> >> On 12/21/2011 7:44 PM, fred smith wrote:
> >>> Just did an in-place update from 6.1 to 6.2 on my eeepc 901 (Atom CPU).
> >>>
> >>> during boot, (if I hit ESC to see the boot messages) it says "starging udev"
> >>> then nothing else for a few seconds, then a huge register dump scrolls
> >>> by. it's too big to see the beginning of it.
> >>>
> >>> If I boot from the prior kernel and look in /var/log/messages, I don't
> >>> see any evidence of the failed boot.
> >>>
> >>> I've seen the other thread titled "kernel panic", and it seems to be
> >>> due to a missing initramfs, but there is an initramfs for 2.6.32-220.el6
> >>> already in /boot, so I don't think that would be the problem.
> >>>
> >>> Can anyone suggest how I would isolate what's going on here?
> >>>
> >>
> >> Take a peek at what is inside the initramfs file:
> >>
> >> ~ $ mkdir initramfs
> >> ~ $ cd initramfs/
> >> ~/initramfs $ gzip -d<  /boot/initramfs-2.6.32-220.el6.x86_64.img | cpio -id
> >> 73012 blocks
> >> ~/initramfs $ ls
> >> bin  cmdline  dev  dracut-004-256.el6  emergency  etc  init  initqueue
> >> initqueue-finished  initqueue-settled  initqueue-timeout  lib  lib64
> >> mount  pre-pivot  pre-trigger  pre-udev  proc  sbin  sys  sysroot  tmp
> >> usr  var
> >> ~/initramfs $ find lib/modules -name '*.ko'
> >> <snip>
> >>
> >> If a module that is required to mount your system (ext3/4, dm_dm-raid,
> >> etc - very system dependent) isn't in there, then the system won't be
> >> able to boot. Sometimes they don't get added automatically, for whatever
> >> reason. If you're able to identify the missing driver, edit this file:
> >>
> >> /etc/dracut.conf
> >>
> >> And add a line like this:
> >>
> >> add_drivers+="name-of-driver"
> >>
> >> Then re-run dracut. If you don't know how to do that, then you probably
> >> should just rpm -e that kernel package, then re-install it.
> >>
> >> Hope this helps.
> >
> > Corey, would it be a ligitimate comparison to unpack both the initramfs
> > for the new kernel and for the most recent prior one, then compare the
> > list of kernel modules?
> >
> > thanks for the suggestion!
> >
> 
> Yes, that's a good thing to do.

well, I got the list of .ko for both the new (bad) initramfs and the
old (bood) one, stripped off the start of each line so that it beings
with "kernel" (so the different path won't confuse diff) and ran:

	diff good bad | less

and here's what I got:

131a132
> kernel/drivers/scsi/iscsi_boot_sysfs.ko
140a142
> kernel/drivers/md/dm-raid.ko
146a149
> kernel/drivers/md/dm-raid45.ko
158a162
> kernel/drivers/md/dm-flakey.ko
163a168
> kernel/drivers/md/dm-memcache.ko
177a183,184
> kernel/drivers/platform/x86/mxm-wmi.ko
> kernel/drivers/platform/x86/wmi.ko
249a257,258
> kernel/drivers/target/loopback/tcm_loop.ko
> kernel/drivers/target/target_core_mod.ko
272d280
< kernel/drivers/hwmon/hwmon.ko


which seems to show that the "bad" one contains some that aren't in the
"good"one. the only exception is hwmon.ko doesn't exist in "good", but
I can't see how that would be important, can you?

> 
> If you come up empty (all the same kernel modules exist in both) then 
> it's likely a bug in some kernel module. The "emergency_shell" part of 
> dracut may be useful in debug this. When you reboot, during the grub 
> menu, add this to the kernel's command line:
> 
> rdbreak=cmdline

I guess I'll try this, though I'm not sure I know how to poke
around productively. what have I to lose? :)

> 
> During the boot process, you'll get dropped to a command line, and can 
> run some of the basic commands provided intisde the initramfs.
> 
> If you look at the "init" file inside the initramfs, you can see the 
> different points you'll end up with with different arguments to rdbreak; 
> ie, pre-udev, initqueue, etc.
> 
> -- 
> Corey Henderson
> http://cormander.com/
> _______________________________________________
> CentOS mailing list
> CentOS at centos.org
> http://lists.centos.org/mailman/listinfo/centos

-- 
---- Fred Smith -- fredex at fcshome.stoneham.ma.us -----------------------------
               But God demonstrates his own love for us in this: 
                         While we were still sinners, 
                              Christ died for us.
------------------------------- Romans 5:8 (niv) ------------------------------



More information about the CentOS mailing list