Currently, systemd uses 90s as the default mount unit timeout,
in some cases, it's not enough and results in mount timeout
further results in kdump dumping failure, but the device can
actually be ready after a while. We've met several such issues.
So, we add a "x-systemd.device-timeout=600"(600s should be long
enough) as the default timeout to the mount options if there is
no "x-systemd.device-timeout=X" specified. It can be overridden
by /etc/fstab mount options, so that users can specify other
timeout values if they want to.
Note: this is different from rd.timeout which was introduced by
dracut initqueue.
Signed-off-by: Xunlei Pang <xlpang(a)redhat.com>
---
mkdumprd | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/mkdumprd b/mkdumprd
index d3ecbd6..30f8ba6 100644
--- a/mkdumprd
+++ b/mkdumprd
@@ -104,6 +104,11 @@ to_mount() {
_options=$(echo $_options | sed 's/noauto//')
_options=${_options/#ro/rw} #mount fs target as rw in 2nd kernel
+ # use 600s as default systemd mount timeout if none
+ if ! strstr $_options "x-systemd.device-timeout"; then
+ _options="$_options,x-systemd.device-timeout=600"
+ fi
+
_mntopts="$_target $_fstype $_options"
#for non-nfs _dev converting to use udev persistent name
if [ -b "$_source" ]; then
--
1.8.3.1