]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
document rd.retry and change the default value to 30s
authorHarald Hoyer <harald@redhat.com>
Tue, 31 Jul 2012 10:37:35 +0000 (12:37 +0200)
committerHarald Hoyer <harald@redhat.com>
Tue, 31 Jul 2012 10:37:35 +0000 (12:37 +0200)
Also start the timeout scripts after 2/3 of the time.

dracut.cmdline.7.asc
modules.d/98systemd/dracut-initqueue.sh
modules.d/99base/init.sh

index 884b22390be5a196c0d698fc909eab6edc40e49f..e27c1521e6eb9de9f6879787020f7fe5c8562612 100644 (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
 ~~~~~
index 1ee6be15a8f75fa355d6ffa5c6feba16d9adf319..e9da432b0fed0d67b5615a4a77d402d2258e0f0c 100755 (executable)
@@ -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
index c33f1825fdd5c22bfb6e46b9731fd8153965d876..16c8958ca0c28840131604c52af24ccd1d7e5214 100755 (executable)
@@ -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