SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I reboot and get a kernel panic stating the root partition failed to mount and that /sbin/init could not be found on rootdev. What gives? Am I forgetting to include a scsi module? Is module raid_class required? PCI chipset for motherboard?
# lspci
00:00.0 Host bridge: Broadcom CNB20HE Host Bridge (rev 23)
00:00.1 Host bridge: Broadcom CNB20HE Host Bridge (rev 01)
00:00.2 Host bridge: Broadcom CNB20HE Host Bridge (rev 01)
00:00.3 Host bridge: Broadcom CNB20HE Host Bridge (rev 01)
00:01.0 RAID bus controller: Compaq Computer Corporation Smart Array 5i/532 (rev 01)
00:02.0 Ethernet controller: Intel Corporation 82557/8/9 Ethernet Pro 100 (rev 08)
00:04.0 Ethernet controller: Intel Corporation 82557/8/9 Ethernet Pro 100 (rev 08)
00:05.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)
00:06.0 System peripheral: Compaq Computer Corporation Advanced System Management Controller
00:0f.0 ISA bridge: Broadcom OSB4 South Bridge (rev 51)
00:0f.1 IDE interface: Broadcom OSB4 IDE Controller
00:0f.2 USB Controller: Broadcom OSB4/CSB5 OHCI USB Controller (rev 04)
07:04.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
07:04.3 USB Controller: ALi Corporation USB 2.0 Controller (rev 01)
07:07.0 PCI Hot-plug controller: Compaq Computer Corporation PCI Hotplug Controller (rev 12)
first things first. did you install the initrd ( mkinitrd again,modifying lilo.conf and rerunnung lilo).
mkinitrd is supposed to insert the dependencies of a module as well (like modprobe). so if cciss needs a scsi module it would have been included..
what modules are loaded, when you boot with the -huge kernel?
mkinitrd is supposed to insert the dependencies of a module as well (like modprobe). so if cciss needs a scsi module it would have been included..
It appears that all the proper modules are installed to /boot/initrd-tree.
Code:
cat /boot/initrd-tree/load_kernel_modules
# This is a script used to load the kernel modules.
# To use it, chmod it 755, and then add the insmod
# lines needed to load your modules, like this:
insmod -v /lib/modules/$(uname -r)/kernel/drivers/block/cciss.ko
insmod -v /lib/modules/$(uname -r)/kernel/fs/mbcache.ko
insmod -v /lib/modules/$(uname -r)/kernel/fs/jbd/jbd.ko
insmod -v /lib/modules/$(uname -r)/kernel/fs/ext3/ext3.ko
insmod -v /lib/modules/$(uname -r)/kernel/fs/reiserfs/reiserfs.ko
I don't think I really need the ext3 modules, but I included them since my /boot partition is ext3.
I had a similar issue on a DL360 right about the time 12.0 released, and I've not had time to get all the kinks worked out of it. Try this patch to mkinitrd (credit goes to Eric Hameleers, not me, for this one) - it solves at least one of the problems that you're having (but probably didn't notice yet) :-)
Code:
--- mkinitrd.orig 2007-07-14 01:15:21.415210095 -0500
+++ mkinitrd 2007-07-14 01:16:22.918345919 -0500
@@ -83,7 +83,7 @@
SLOPPY_DEV_LIST=$(cat /proc/partitions)
for device in $SLOPPY_DEV_LIST ; do
if [ ! -r $SOURCE_TREE/dev/$device -a -b /dev/$device ]; then
- cp -a /dev/$device $SOURCE_TREE/dev
+ cp -a --parents /dev/$device $SOURCE_TREE
fi
done
# Make sure a kernel module directory exists:
@@ -101,7 +101,7 @@
SLOPPY_DEV_LIST=$(cat /proc/partitions)
for device in $SLOPPY_DEV_LIST ; do
if [ ! -r $SOURCE_TREE/dev/$device -a -b /dev/$device ]; then
- cp -a /dev/$device $SOURCE_TREE/dev
+ cp -a --parents /dev/$device $SOURCE_TREE
fi
done
# Wrap the initrd as an initramfs image and move it into place:
Well, sorta... As I said earlier, I ran into this issue on a DL360 right about the time 12.0 was getting close to release. Eric and I figured out what was going wrong in the initrd creation, and the patch followed. However, I didn't (and still don't) have time to really do any testing with it, and since nobody else had notified Pat of any problems with mkinitrd, there was no justification to throw untested code into the release.
Anyway, good to hear that this worked for you. I'll make Pat aware of it, but I can't even speculate on whether he'll patch it post-release.
The machine is a AMD X2, NV NF4 mobo, and a WD SATA.
/boot = ext3
/ = reiserfs
If you've got a custom kernel (2.6.22.x), then why even bother with an initrd? Since you're having to compile the kernel anyway, go ahead and put reiserfs support in it.
I'm not complaining, but they did a sloppy job with mkinitrd 1.1.3 as they only applied a quarter of the patch above, and they didn't even change the version numbers in the script.
So mkinitrd 1.1.3 doesn't fix the problem, but the patch above does.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.