[CentOS] Kernel panic after update to 6.4

Johnny Hughes

johnny at centos.org
Thu Mar 14 16:08:54 UTC 2013


On 03/14/2013 10:33 AM, Liam O'Toole wrote:
> On 2013-03-14, Johnny Hughes <johnny at centos.org> wrote:
>
> (...)
>
>> Maybe ... try this (everything done as root):
>>
>> Boot on a kernel that works and do this:
>>
>> 1. Backup you current initrd:
>>
>> cp -a /boot/initramfs-2.6.32-358.2.1.el6.x86_64.img
>> /boot/initramfs-2.6.32-358.2.1.el6.x86_64.img.bak
> OK.
>
>> 2. Go to this directory:
>>
>> cd /lib/modules/2.6.32-358.2.1.el6.x86_64/kernel/drivers/md/
> For me the corresponding directory is
> /lib/modules/2.6.32-358.2.1.el6.i686/kernel/drivers/md.
>
>> 3.  Figure out the md modules loaded in the old kernel:
>>
>> lsmod | grep dm_
>>
>> in my case, that output would be this:
>>
>> [root at localhost md]# lsmod | grep dm_
>> dm_round_robin   2525  0
>> dm_multipath        17756  1 dm_round_robin
>> dm_mirror             14133  0
>> dm_region_hash   12085  1 dm_mirror
>> dm_log                  9930  2 dm_mirror,dm_region_hash
>> dm_mod                82839  12 dm_multipath,dm_mirror,dm_log
>>
>> (note, dm-mod and dm_mod are the same thing)
> In my case I have:
>
> # lsmod | grep dm_
> dm_mirror              11678  0 
> dm_region_hash          9609  1 dm_mirror
> dm_log                  8322  2 dm_mirror,dm_region_hash
> dm_mod                 66925  8 dm_mirror,dm_log
>
>> 5.  Do an file list and make sure all the modules you need to include
>> (in my case the 6 in column 1):
>>
>> ls
>>
>> Note: make sure all the modules are listed ad you see the file names
>> (should be for me: dm-round-robin.ko, dm-multipath.ko, dm-mirror.ko,
>> dm-region-hash.ko, dm-log.ko, dm-mod.ko)
> Yes, all are present:
>
> # ls dm*.ko
> dm-bufio.ko   dm-log-userspace.ko  dm-queue-length.ko
> dm-service-time.ko
> dm-crypt.ko   dm-memcache.ko       dm-raid45.ko        dm-snapshot.ko
> dm-delay.ko   dm-mirror.ko         dm-raid.ko          dm-thin-pool.ko
> dm-flakey.ko  dm-mod.ko            dm-region-hash.ko   dm-zero.ko
> dm-log.ko     dm-multipath.ko      dm-round-robin.ko
>
>> 4.  Create a new initrd with all the relevant md modules preloaded (in
>> my case, this command line ... preload only the modules you need from
>> your list .. again, have to do this as root):
>>
>> mkinitrd -f --preload=3Ddm_round_robin --preload=3Ddm_multipath
>> --preload=3Ddm_mirror  --preload=3Ddm_region_hash  --preload=3Ddm_log=20
>> --preload=3Ddm_mod  /boot/initramfs-2.6.32-358.2.1.el6.x86_64.img
>> 2.6.32-358.2.1.el6.x86_64
>>
>> Note:  The above mkinitrd command (and all the other commands) should be
>> entered all on one line, I am sure it will wrap when posted.
> (Indeed it did wrap.) The command I used was
>
> mkinitrd -f --preload=dm_mirror --preload=dm_region_hash
> --preload=dm_log --preload=dm_mod
> /boot/initramfs-2.6.32-358.2.1.el6.i686.img 2.6.32-358.2.1.el6.i686
>
> That produced a file of similar size to the original:
>
> # ls -l /boot/initramfs-2.6.32-358.2.1.el6.i686.img*
> -rw-r--r--. 1 root root 15450686 Mar 14 15:13
> /boot/initramfs-2.6.32-358.2.1.el6.i686.img
> -rw-r--r--. 1 root root 15450647 Mar 13 17:11
> /boot/initramfs-2.6.32-358.2.1.el6.i686.img.bak
>
>> 5.  This may not work, because there may need to be some other things
>> loaded that are not, like the disc controller's kernel module driver,
>> etc.  What I think is going on is either something has been removed from
>> this kernel that existed before ... OR ... something is being
>> mis-detected with this kernel on your machine.
> Unfortunately, when rebooting into kernel 358.2.1 I get the same result
> as before.
>
> Thanks for taking the time to look into this. Is it an upstream bug?

It is actually kind of hard to tell where the bug lies ... it is
possible that somehow our kernel or other tools are causing some
problem, but I would think it is more likely that some driver is not
being detected and loaded.  If it is in relation to dm-mod, then I would
suspect that the driver is for the chipset's drive controller.

If you can figure out which driver that is and make it preload, you
might be able to boot ... then we can figure out why it is not detected.



-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lists.centos.org/pipermail/centos/attachments/20130314/9a0022ae/attachment-0001.sig>


More information about the CentOS mailing list