[OE-core] [PATCH] mkefidisk: Unmount after partitioning

Darren Hart dvhart at linux.intel.com
Thu Apr 25 21:27:29 UTC 2013


Some automounters are rather overzealous and like to mount things
immediately after partitioning. This can happen if the disk is being
reused and the partitions align exactly with the existing partitions
which have already been formatted. Move the unmount code into a function
and call it before and after partitioning.

Signed-off-by: Darren Hart <dvhart at linux.intel.com>
---
 scripts/contrib/mkefidisk.sh | 32 +++++++++++++++++++++-----------
 1 file changed, 21 insertions(+), 11 deletions(-)

diff --git a/scripts/contrib/mkefidisk.sh b/scripts/contrib/mkefidisk.sh
index 741c3ab..0c15104 100755
--- a/scripts/contrib/mkefidisk.sh
+++ b/scripts/contrib/mkefidisk.sh
@@ -71,6 +71,20 @@ function device_details() {
 	echo ""
 }
 
+function unmount_device() {
+	grep -q $DEVICE /proc/mounts
+	if [ $? -eq 0 ]; then
+		echo -n "$DEVICE listed in /proc/mounts, attempting to unmount..."
+		umount $DEVICE* 2>/dev/null
+		grep -q $DEVICE /proc/mounts
+		if [ $? -eq 0 ]; then
+			echo "FAILED"
+			exit 1
+		fi
+		echo "OK"
+	fi
+}
+
 
 #
 # Parse and validate arguments
@@ -100,17 +114,7 @@ fi
 #
 # Check if any $DEVICE partitions are mounted
 #
-grep -q $DEVICE /proc/mounts
-if [ $? -eq 0 ]; then
-	echo -n "$DEVICE listed in /proc/mounts, attempting to unmount..."
-	umount $DEVICE* 2>/dev/null
-	grep -q $DEVICE /proc/mounts
-	if [ $? -eq 0 ]; then
-		echo "FAILED"
-		exit 1
-	fi
-	echo "OK"
-fi
+unmount_device
 
 
 #
@@ -183,6 +187,12 @@ parted $DEVICE print
 
 
 #
+# Check if any $DEVICE partitions are mounted after partitioning
+#
+unmount_device
+
+
+#
 # Format $DEVICE partitions
 #
 echo ""
-- 
1.8.1.2





More information about the Openembedded-core mailing list