From: Andrei Borzenkov <[email protected]>
References:
https://bugzilla.suse.com/show_bug.cgi?id=906592
Signed-off-by: Thomas Renninger <[email protected]>
---
modules.d/98dracut-systemd/rootfs-generator.sh | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/modules.d/98dracut-systemd/rootfs-generator.sh
b/modules.d/98dracut-systemd/rootfs-generator.sh
index 5910ce7..7eb0b1a 100755
--- a/modules.d/98dracut-systemd/rootfs-generator.sh
+++ b/modules.d/98dracut-systemd/rootfs-generator.sh
@@ -65,6 +65,23 @@ generator_mount_rootfs()
fi
}
+generator_fsck_after_pre_mount()
+{
+ local _name
+
+ [ -z "$1" ] && return 0
+
+ _name=$(dev_unit_name "$1")
+ [ -d /run/systemd/generator/systemd-fsck@${_name}.service.d ] || mkdir -p
/run/systemd/generator/systemd-fsck@${_name}.service.d
+ if ! [ -f
/run/systemd/generator/systemd-fsck@${_name}.service.d/after-pre-mount.conf ];
then
+ {
+ echo "[Unit]"
+ echo "After=dracut-pre-mount.service"
+ } >
/run/systemd/generator/systemd-fsck@${_name}.service.d/after-pre-mount.conf
+ fi
+
+}
+
root=$(getarg root=)
case "$root" in
block:LABEL=*|LABEL=*)
@@ -95,6 +112,7 @@ GENERATOR_DIR="$1"
if [ "${root%%:*}" = "block" ]; then
generator_wait_for_dev "${root#block:}" "$RDRETRY"
+ generator_fsck_after_pre_mount "${root#block:}"
strstr "$(cat /proc/cmdline)" 'root=' || generator_mount_rootfs
"${root#block:}" "$(getarg rootfstype=)" "$(getarg rootflags=)"
fi
--
2.1.4
--
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