dracut/0034-multipath-module-setup.sh-fix-host-only-mount-checks.patch

40 lines
1.3 KiB
Diff
Raw Normal View History

From 63616dffe30add9fd4c0a22349fd33fe0fb3db1d Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Wed, 25 Apr 2012 11:23:49 +0200
Subject: [PATCH] multipath/module-setup.sh: fix host-only/mount checks
---
modules.d/90multipath/module-setup.sh | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh
index 2bc1b41..ae9ec59 100755
--- a/modules.d/90multipath/module-setup.sh
+++ b/modules.d/90multipath/module-setup.sh
@@ -11,18 +11,16 @@ check() {
[[ $debug ]] && set -x
is_mpath() {
- [ -e /sys/dev/block/$1/dm/uuid ] || return 1
- [[ $(cat /sys/dev/block/$1/dm/uuid) =~ ^mpath- ]] && return 0
+ local _dev
+ _dev=${1##/dev/}
+ [ -e /sys/dev/block/$_dev/dm/uuid ] || return 1
+ [[ $(cat /sys/dev/block/$_dev/dm/uuid) =~ ^mpath- ]] && return 0
return 1
}
- if [[ $hostonly ]]; then
- _rootdev=$(find_root_block_device)
- if [[ $_rootdev ]]; then
- check_block_and_slaves is_mpath "$_rootdev" && return 0
- fi
- return 1
- fi
+ [[ $hostonly ]] || [[ $mount_needs ]] && {
+ for_each_host_dev_fs is_mpath || return 1
+ }
return 0
}