document rd.retry and change the default value to 30s

Also start the timeout scripts after 2/3 of the time.
This commit is contained in:
Harald Hoyer 2012-07-31 12:37:35 +02:00
parent 173edca09e
commit 5cd7c104bd
3 changed files with 10 additions and 4 deletions

View File

@ -104,6 +104,12 @@ Misc
force loading kernel module <drivername> after all automatic loading modules
have been loaded. This parameter can be specified multiple times.
**rd.retry=**_<seconds>_::
specify how long dracut should wait for devices to appear.
The default is 30 seconds. After 2/3 of the time, degraded raids are force
started and the timer is reset to 0. If you have hardware, which takes a very long
time to announce its drives, you might want to extend this value.
[[dracutkerneldebug]]
Debug
~~~~~

View File

@ -13,7 +13,7 @@ source_conf /etc/conf.d
getarg 'rd.break=initqueue' -d 'rdbreak=initqueue' && emergency_shell -n initqueue "Break before initqueue"
RDRETRY=$(getarg rd.retry -d 'rd_retry=')
RDRETRY=${RDRETRY:-20}
RDRETRY=${RDRETRY:-30}
RDRETRY=$(($RDRETRY*2))
export RDRETRY
@ -52,7 +52,7 @@ while :; do
sleep 0.5
if [ $main_loop -gt $(($RDRETRY/2)) ]; then
if [ $main_loop -gt $((2*$RDRETRY/3)) ]; then
for job in $hookdir/initqueue/timeout/*.sh; do
[ -e "$job" ] || break
job=$job . $job

View File

@ -146,7 +146,7 @@ udevadm trigger --type=devices --action=add >/dev/null 2>&1
getarg 'rd.break=initqueue' -d 'rdbreak=initqueue' && emergency_shell -n initqueue "Break before initqueue"
RDRETRY=$(getarg rd.retry -d 'rd_retry=')
RDRETRY=${RDRETRY:-20}
RDRETRY=${RDRETRY:-30}
RDRETRY=$(($RDRETRY*2))
export RDRETRY
main_loop=0
@ -183,7 +183,7 @@ while :; do
sleep 0.5
if [ $main_loop -gt $(($RDRETRY/2)) ]; then
if [ $main_loop -gt $((2*$RDRETRY/3)) ]; then
for job in $hookdir/initqueue/timeout/*.sh; do
[ -e "$job" ] || break
job=$job . $job