Frans Pop
2005-12-04 15:50:29 UTC
(CC to d-s390 as there may be people who can provide additional
information.)
First, the following modules need to be available in the initrd:
- dasd_eckd_mod
- dasd_fba_mod
- dasd_mod
- dcssblk
It I add these in /etc/mkinitramfs/modules, they will of course be loaded,
but the dasd devices are not created. A boot results in:
<snip from console>
Loading, please wait...
Begin: Initializing /dev ...
Done.
Begin: Loading modules ...
Done.
Begin: Running /scripts/init-premount ...
Done.
Begin: Mounting root file system ...
Begin: Running /scripts/local-top ...
Done.
ALERT /dev/dasda1 does not exist. Dropping to a shell
</snip>
Reason is that dasd_mod needs an option to tell it which dasd devices
should be used. I've written a script that creates a config file for
modprobe in /etc/modprobe.d/.
The script is a first approximation and probably needs cleaning up.
Background info and some possible issues are documented in the script.
The script was added in /etc/mkinitramfs/hooks/
During reconfiguration of the kernel-image, I got the following error.
<snip>
$ sudo dpkg-reconfigure linux-image-2.6.14-2-s390
Using /usr/sbin/mkinitramfs to build the ramdisk.
Full list of probed ramdisk generating tools :
/usr/sbin/mkinitrd /usr/sbin/mkinitrd.yaird /usr/sbin/mkinitramfs.
ln: creating symbolic link `/tmp/mkinitramfs_Znxcw0//etc/modprobe.d/dasd'
to `/tmp/initramfs_dasd': File exists
</snip>
I used 'set -x' in the script to debug and that told me it was being
executed twice! This looks like a bug in initramfs-tools.
A boot with the initrd thus created resulted in:
<snip from console>
Loading, please wait...
Begin: Initializing /dev ...
Done.
Begin: Loading modules ...
dasd(eckd): 0.0.0120: 3390/02(CU:3990/02) Cyl:1113 Head:15 Sec:224
dasd(eckd): 0.0.0120: (4kB blks): 801360kB at 48kB/trk compatible disk
layout
dasda:VOL1/ LX0120: dasda1 dasda2
dasd(eckd): 0.0.0121: 3390/02(CU:3990/02) Cyl:1113 Head:15 Sec:224
dasd(eckd): 0.0.0121: (4kB blks): 801360kB at 48kB/trk compatible disk
layout
dasdb:VOL1/ 0X0121: dasdb1 dasdb2
Done.
Begin: Running /scripts/init-premount ...
Done.
Begin: Mounting root file system ...
Begin: Running /scripts/local-top ...
Done.
Begin: Running /scripts/local-premount ...
Done.
FATAL: Module ext3 not found.
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
Begin: Running /scripts/log-bottom ...
Done.
Done.
Begin: Running /scripts/init-bottom ...
Done.
Kernel panic - not syncing: Attempted to kill init
HHCCP011I CPU0000: Disabled wait state
PSW=000A0000 8003025E
</snip>
So now the devices are created.
The "FATAL: Module ext3 not found." error is bogus as ext3 is built in.
The next lines tell that a ext3 partition is mounted.
I have no idea why init fails after that. As I did not get a shell, I'm
not sure how to debug further. Suggestions welcome.
Cheers,
FJP
information.)
can you please retest if that device gets created?
OK. I've done some testing and made some progress.First, the following modules need to be available in the initrd:
- dasd_eckd_mod
- dasd_fba_mod
- dasd_mod
- dcssblk
It I add these in /etc/mkinitramfs/modules, they will of course be loaded,
but the dasd devices are not created. A boot results in:
<snip from console>
Loading, please wait...
Begin: Initializing /dev ...
Done.
Begin: Loading modules ...
Done.
Begin: Running /scripts/init-premount ...
Done.
Begin: Mounting root file system ...
Begin: Running /scripts/local-top ...
Done.
ALERT /dev/dasda1 does not exist. Dropping to a shell
</snip>
Reason is that dasd_mod needs an option to tell it which dasd devices
should be used. I've written a script that creates a config file for
modprobe in /etc/modprobe.d/.
The script is a first approximation and probably needs cleaning up.
Background info and some possible issues are documented in the script.
The script was added in /etc/mkinitramfs/hooks/
During reconfiguration of the kernel-image, I got the following error.
<snip>
$ sudo dpkg-reconfigure linux-image-2.6.14-2-s390
Using /usr/sbin/mkinitramfs to build the ramdisk.
Full list of probed ramdisk generating tools :
/usr/sbin/mkinitrd /usr/sbin/mkinitrd.yaird /usr/sbin/mkinitramfs.
ln: creating symbolic link `/tmp/mkinitramfs_Znxcw0//etc/modprobe.d/dasd'
to `/tmp/initramfs_dasd': File exists
</snip>
I used 'set -x' in the script to debug and that told me it was being
executed twice! This looks like a bug in initramfs-tools.
A boot with the initrd thus created resulted in:
<snip from console>
Loading, please wait...
Begin: Initializing /dev ...
Done.
Begin: Loading modules ...
dasd(eckd): 0.0.0120: 3390/02(CU:3990/02) Cyl:1113 Head:15 Sec:224
dasd(eckd): 0.0.0120: (4kB blks): 801360kB at 48kB/trk compatible disk
layout
dasda:VOL1/ LX0120: dasda1 dasda2
dasd(eckd): 0.0.0121: 3390/02(CU:3990/02) Cyl:1113 Head:15 Sec:224
dasd(eckd): 0.0.0121: (4kB blks): 801360kB at 48kB/trk compatible disk
layout
dasdb:VOL1/ 0X0121: dasdb1 dasdb2
Done.
Begin: Running /scripts/init-premount ...
Done.
Begin: Mounting root file system ...
Begin: Running /scripts/local-top ...
Done.
Begin: Running /scripts/local-premount ...
Done.
FATAL: Module ext3 not found.
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
Begin: Running /scripts/log-bottom ...
Done.
Done.
Begin: Running /scripts/init-bottom ...
Done.
Kernel panic - not syncing: Attempted to kill init
HHCCP011I CPU0000: Disabled wait state
PSW=000A0000 8003025E
</snip>
So now the devices are created.
The "FATAL: Module ext3 not found." error is bogus as ext3 is built in.
The next lines tell that a ext3 partition is mounted.
I have no idea why init fails after that. As I did not get a shell, I'm
not sure how to debug further. Suggestions welcome.
Cheers,
FJP