In kdump, When the dump device was removed, dracut will drop to shell
during second kernel boot. That means kdump isn't even started. But
in this case, if the target isn't presented, we should dump to a rootfs
device as a default action.
In this patch, add a new parameter continue_on_fail. After initqueue
timeout, detect whether this parameter is specified. If yes,continue.
If not, enter into emergency_shell.
For later extending, user need give timeout point. E.g, use this
parameter like below:
continue_on_fail=initqueue
dracut.cmdline.7.asc: add the relevant description
Signed-off-by: Baoquan He <[email protected]>
---
dracut.cmdline.7.asc | 3 +++
modules.d/98systemd/dracut-initqueue.sh | 5 ++++-
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
index 62372a5..31d2d84 100644
--- a/dracut.cmdline.7.asc
+++ b/dracut.cmdline.7.asc
@@ -121,6 +121,9 @@ Misc
specify the controlling terminal for the console.
This is useful, if you have multiple "console=" arguments.
+**continue_on_fail=**_{initqueue}_::
+ continue after initqueue timeout by specify the timeout point 'initqueue'
+
[[dracutkerneldebug]]
Debug
~~~~~
diff --git a/modules.d/98systemd/dracut-initqueue.sh
b/modules.d/98systemd/dracut-initqueue.sh
index 7de89e9..f889d20 100755
--- a/modules.d/98systemd/dracut-initqueue.sh
+++ b/modules.d/98systemd/dracut-initqueue.sh
@@ -61,7 +61,10 @@ while :; do
fi
main_loop=$(($main_loop+1))
- [ $main_loop -gt $RDRETRY ] && emergency_shell "Could not boot."
+ if [ $main_loop -gt $RDRETRY ]; then
+ getarg 'continue_on_fail=initqueue' && break
+ emergency_shell "Could not boot."
+ fi
done
unset job
--
1.7.1
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html