From: Joy Almacen <joy@empexis.com>
To: wa@almesberger.net, linux-kernel@vger.kernel.org
Cc: "Stephen C. Tweedie" <sct@redhat.com>
Subject: pivot_root and initrd kernel panic woes
Date: Tue, 11 Dec 2001 13:50:46 -0500 [thread overview]
Message-ID: <3C165586.457A26F0@empexis.com> (raw)
Werner and the Kernel Gods,
I have tried for the past 3 days fruitlessly to resolve my kernel
woes. Spent most of my working hours searching google for any answers
but I got confused instead. I am desperate for any info that would
point
me to the right direction. Your assistance will be highly appreciated
and I know that I am not alone on this one.
Here's what I am trying to do.
I have successfully installed RH 7.1 with 2.4.2 kernel on a Compaq
Proliant 6000 (4 Processors) . The SCSI driver that was loaded on
install is sym53c8xx .
cat /proc/scsi/scsi
Attached devices:
Host: scsi1 Channel: 00 Id: 00 Lun: 00
Vendor: COMPAQ Model: MAB3091SC Rev: 0814
Type: Direct-Access ANSI SCSI revision: 02
[root@tinkerbell smpimg]# lsmod
Module Size Used by
loop 9120 2 (autoclean)
eepro100 16624 1 (autoclean)
sym53c8xx 62080 5
sd_mod 11680 5
scsi_mod 95072 2 [sym53c8xx sd_mod]
[root@tinkerbell smpimg]# cat /proc/mounts
/dev/root / ext2 rw 0 0
/proc /proc proc rw 0 0
/dev/sda8 /home ext2 rw 0 0
/dev/sda6 /usr ext2 rw 0 0
/dev/sda5 /var ext2 rw 0 0
none /dev/pts devpts rw 0 0
/dev/loop0 /mnt/smpimg ext2 rw 0 0
Also, /dev/ram0 is enabled:
fdisk /dev/ram0
Note: sector size is 1024 (not 512)
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF
disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Command (m for help): p
Disk /dev/ram0: 1 heads, 4096 sectors, 1 cylinders
Units = cylinders of 4096 * 1024 bytes
Device Boot Start End Blocks Id System
Since I wanted to have EXT3 support , I upgraded my kernel to
2.4.9-12 from redhat.com together with the
required SysVinit, modutils, initscripts, filesystem and all.
Once I have the new kernel installed I created an initrd image. The
reason is that the SCSI drivers are modules and
not compiled in:
[root@tinkerbell scsi]# pwd
/lib/modules/2.4.9-12smp/kernel/drivers/scsi
[root@tinkerbell scsi]# ls
3w-xxxx.o aha1740.o cpqfc.o fdomain.o ips.o
pci2000.o qlogicfas.o sg.o tmscsim.o
53c7,8xx.o aic7xxx dmx3191d.o gdth.o iscsi.o
pci2220i.o qlogicfc.o sim710.o u14-34f.o
a100u2w.o aic7xxx_mod.o dpt_i2o.o g_NCR5380.o megaraid.o
pcmcia qlogicisp.o sr_mod.o ultrastor.o
aacraid.o aic7xxx.o dtc.o ide-scsi.o NCR53c406a.o
ppa.o scsi_debug.o st.o wd7000.o
advansys.o AM53C974.o eata_dma.o imm.o ncr53c8xx.o
psi240i.o scsi_mod.o sym53c416.o
aha152x.o atp870u.o eata.o in2000.o osst.o
qla1280.o sd_mod.o sym53c8xx.o
aha1542.o BusLogic.o eata_pio.o initio.o pas16.o
qla2x00.o seagate.o t128.o
Since I understand that I have to create an image for my booting
process, I created one with the following
command:
[root@tinkerbell scsi]# cd /boot/
mkinitrd initrd-2.4.9-12smp.img 2.4.9-12smp --preload scsi_mod
--with=sd_mod --with=sym53c8xx -v
Using modules: ./kernel/drivers/scsi/scsi_mod.o
./kernel/drivers/scsi/sd_mod.o ./kernel/drivers/scsi/sym53c8xx.o
Using loopback device /dev/loop1
/sbin/nash -> /tmp/initrd.QCmw3a/bin/nash
/sbin/insmod.static -> /tmp/initrd.QCmw3a/bin/insmod
`/lib/modules/2.4.9-12smp/./kernel/drivers/scsi/scsi_mod.o' ->
`/tmp/initrd.QCmw3a/lib/scsi_mod.o'
`/lib/modules/2.4.9-12smp/./kernel/drivers/scsi/sd_mod.o' ->
`/tmp/initrd.QCmw3a/lib/sd_mod.o'
`/lib/modules/2.4.9-12smp/./kernel/drivers/scsi/sym53c8xx.o' ->
`/tmp/initrd.QCmw3a/lib/sym53c8xx.o'
Loading module scsi_mod with options
Loading module sd_mod with options
Loading module sym53c8xx with options
Here's my /etc/modules.conf
[root@tinkerbell /boot]# cat /etc/modules.conf
alias eth0 eepro100
alias eth1 eepro100
alias scsi_hostadapter1 sym53c8xx
alias parport_lowlevel parport_pc
alias scsi_hostadapter2 sym53c8xx
alias scsi_hostadapter3 sym53c8xx
alias scsi_hostadapter4 sym53c8xx
After creating the initrd image, I wanted to make sure that it will
mount the correct device:
[root@tinkerbell /boot]# zcat initrd-2.4.9-12smp.img > /tmp/smp
[root@tinkerbell /boot]# mount /tmp/smp -t ext2 /mnt/smpimg/ -o loop
[root@tinkerbell /boot]# cd /mnt/smpimg/
[root@tinkerbell smpimg]# vi linuxrc
Here's the content of mkinitrd generated /linuxrc
#!/bin/nash
echo "Loading scsi_mod module"
insmod /lib/scsi_mod.o
echo "Loading sd_mod module"
insmod /lib/sd_mod.o
echo "Loading sym53c8xx module"
insmod /lib/sym53c8xx.o
mount -t proc /proc /proc
echo Mounting /proc filesystem
echo Creating root device
mkrootdev /dev/root
echo 0x0100 > /proc/sys/kernel/real-root-dev
umount /proc
echo Mounting root filesystem
mount --ro -t ext2 /dev/root /sysroot
pivot_root /sysroot /sysroot/initrd
I saw a posting on the net saying that I should have this edited as
follows:
#!/bin/nash
echo "Loading scsi_mod module"
insmod /lib/scsi_mod.o
echo "Loading sd_mod module"
insmod /lib/sd_mod.o
echo "Loading sym53c8xx module"
insmod /lib/sym53c8xx.o
mount -t proc /proc /proc
echo Mounting /proc filesystem
echo Creating root device
mkrootdev /dev/root
echo 0x0100 > /proc/sys/kernel/real-root-dev
umount /proc
echo Mounting root filesystem
mount --ro -t ext2 /dev/root /sysroot
cd /sysroot ## CD to
/sysroot first
pivot_root /sysroot /sysroot/initrd ## Do pivot_root
exec /sbin/init "$@" ## Execute
/sbin/init
After which I added this line my /etc/lilo.conf file:
image=/boot/vmlinuz-2.4.9-12smp
label=2.4.9smp
append="initrd=/boot/initrd-2.4.9-12smp.img root=/dev/ram0
init=/linuxrc rw"
Reran lilo
[root@tinkerbell /root]# lilo -v
LILO version 21.4-4, Copyright (C) 1992-1998 Werner Almesberger
'lba32' extensions Copyright (C) 1999,2000 John Coffman
Reading boot sector from /dev/sda
Merging with /boot/boot.b
Mapping message file /boot/message
Boot image: /boot/vmlinuz-2.4.2-2smp
Mapping RAM disk /boot/initrd-2.4.2-2smp.img
Added linux
Boot image: /boot/vmlinuz-2.4.2-2
Mapping RAM disk /boot/initrd-2.4.2-2.img
Added linux-up *
Boot image: /boot/vmlinuz-2.4.9-12smp ## Entry for SMP kernel
Added 2.4.9smp
Boot image: /boot/vmlinuz-2.4.9-12-smp-4th
Added custom
/boot/boot.0800 exists - no backup copy made.
Writing boot sector.
Now for the real fun part, when I reboot I get the following error:
"VFS: Cannot open root device "ram0" or 01:00
Please append a correct "root=" boot option
Kernel panic: VFS: unable to mount root fs on 01:00 "
I have tried other approaches but to no avail. I decided that I seek
assistance from you
hoping that you will be kind and patient enough to help me.
Thanks in advance,
Joy
next reply other threads:[~2001-12-11 19:45 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-11 18:50 Joy Almacen [this message]
2001-12-11 21:00 ` pivot_root and initrd kernel panic woes Marcel J.E. Mol
2001-12-13 10:09 ` vda
2001-12-13 8:19 ` Alexander Viro
2001-12-13 13:22 ` vda
2001-12-13 14:53 ` vda
2001-12-15 12:14 ` Mike Galbraith
2001-12-15 16:51 ` vda
2001-12-15 17:59 ` Mike Galbraith
2001-12-16 2:32 ` vda
2001-12-16 9:02 ` Mike Galbraith
2001-12-15 16:55 ` vda
2001-12-15 18:03 ` Mike Galbraith
2001-12-13 19:07 ` Stephen C. Tweedie
2001-12-13 18:35 ` Joy Almacen
-- strict thread matches above, loose matches on Subject: below --
2001-12-17 18:38 Torrey Hoffman
2001-12-17 18:44 ` Alexander Viro
2001-12-17 19:02 ` Erik Andersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3C165586.457A26F0@empexis.com \
--to=joy@empexis.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sct@redhat.com \
--cc=wa@almesberger.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.