[Pkg-sysvinit-devel] Bug#510367: Bug#510367: initscripts: checkfs.sh runs before /etc/modules processed
Arthur Marsh
arthur.marsh at internode.on.net
Thu Jan 1 13:14:38 UTC 2009
Petter Reinholdtsen wrote, on 01/01/09 21:14:
> [Arthur Marsh]
>> After manually observing a reboot, it appears that although module
>> eata is successfully loaded before filesystems are checked, the
>> device files for the SCSI disk are created asynchronously, in my
>> case after the filesystem check script has attempted to check the
>> filesystems on the SCSI disk.
>
> Right. So you have been hit by the introduction of asynchronous
> behaviour of the Linux kernel. I have no good idea how to solve it.
> We need to make the early boot system asynchronous too to avoid such
> problems. It also affect USB disks and other busses with slow
> discovery process. :(
>
> Happy hacking,
I manually added the following script to execute as
/etc/rcS.d/S22sleep-for-scsi
#!/bin/sh
if (lsmod|grep eata); then
echo waiting 5 seconds for module eata to query SCSI bus
sleep 5
fi
The 5 second wait between module-loading and filesystem checking was
sufficient time for the SCSI bus to be queried and device files
/dev/sda? to be created.
As my system is not a candidate for sub-5-second boot anyway, I don't
mind the wait if it means that the filesystems are checked before they
are mounted (-:.
Arthur.
More information about the Pkg-sysvinit-devel
mailing list