slowusb: ease the code in order to reduce entropy, one place for one thing.

There were several places where a mixture of sdelay and "sleep 10"
were called without worrying too much, resulting in slower boot
time, mainly. This commit should fix the mess and make some order
in the slowusb saga.
cleanup-cruft
Fabio Erculiani 14 years ago
parent fcdece1b0e
commit 51e0b14044

@ -410,17 +410,23 @@ setup_hotplug() {
fi
}
check_slowusb() {
setup_slowusb() {
# slowusb already set?
if [ "${DO_slowusb}" = "1" ]
then
return
fi
local usb_storage_dir="/sys/bus/usb/drivers/usb-storage"
if [ ! -d "${usb_storage_dir}" ]
then
# no automated slowusb required. no usb-storage devices attached.
return
fi
[ "${DO_slowusb}" ] || \
for x in "${usb_storage_dir}"/*
do
[ -d "${x}" ] && [ "${x}" != "${usb_storage_dir}/module" ] \
&& { FORCE_slowusb="1" ; break ; }
&& { DO_slowusb="1" ; break ; }
done
}
@ -428,13 +434,8 @@ start_dev_mgr() {
if [ "${KV_2_6_OR_GREATER}" ]
then
cd /sys
[ "${DO_slowusb}" ] && sdelay
check_slowusb
[ "${FORCE_slowusb}" ] && sdelay
good_msg 'Activating mdev'
runmdev
[ "${DO_slowusb}" ] || \
[ "${FORCE_slowusb}" ] && sdelay
cd /
fi
}
@ -881,12 +882,12 @@ startLUKS() {
sdelay() {
# Sleep a specific number of seconds if SDELAY is set otherwise only sleep
# 1 second
if [ -n "${SDELAY}" ]
# 3 seconds, which is a much better default than 1 second (previous default)
if [ "${SDELAY}" ]
then
sleep ${SDELAY}
else
sleep 1
sleep 3
fi
}

@ -289,6 +289,11 @@ fi
# Delay if needed for USB hardware
sdelay
# Setup slow USB bits
setup_slowusb
# if doslowusb is passed, pause other 10 seconds
[ "${DO_slowusb}" ] && sleep 10
# Start device manager
start_dev_mgr
@ -675,10 +680,6 @@ then
fi
done
if [ "${DO_slowusb}" ] || [ "${FORCE_slowusb}" ]
then
sleep 10
fi
mkdir initramfs proc tmp sys 2>/dev/null
chmod 1777 tmp
@ -694,11 +695,6 @@ then
# Let Init scripts know that we booted from CD
export CDBOOT
CDBOOT=1
check_slowusb
if [ "${DO_slowusb}" ] || [ "${FORCE_slowusb}" ]
then
sleep 10
fi
else
if [ "${USE_UNIONFS_NORMAL}" = '1' ]
then

Loading…
Cancel
Save