find_mount is really the same thing as ismounted with two additions:

  1) uses "readlink" so "ismounted /dev/disk/by-label/LABEL" works
  2) returns the mountpoint of the device

And ismounted is now just "find_mount $dev >/dev/null".
---
 modules.d/99base/dracut-lib.sh |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
index 3a7be9a..813cead 100755
--- a/modules.d/99base/dracut-lib.sh
+++ b/modules.d/99base/dracut-lib.sh
@@ -452,13 +452,18 @@ udevproperty() {
     fi
 }
 
-ismounted() {
-    while read a m a; do
-        [ "$m" = "$1" ] && return 0
+find_mount() {
+    local dev mnt etc wanted_dev="$(readlink -e -q $1)"
+    while read dev mnt etc; do
+        [ "$dev" = "$wanted_dev" ] && echo "$dev" && return 0
     done < /proc/mounts
     return 1
 }
 
+ismounted() {
+    find_mount "$1" > /dev/null
+}
+
 wait_for_if_up() {
     local cnt=0
     local li
-- 
1.7.10.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

Reply via email to