From c09866b4cf9f43aadd997dd33016979b07d1c130 Mon Sep 17 00:00:00 2001 From: Darren Hart Date: Thu, 25 Apr 2013 14:27:29 -0700 Subject: mkefidisk: Unmount after partitioning 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. (From OE-Core rev: f1854e458e5e77806b1fc837033500fa91272261) Signed-off-by: Darren Hart Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- scripts/contrib/mkefidisk.sh | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'scripts') diff --git a/scripts/contrib/mkefidisk.sh b/scripts/contrib/mkefidisk.sh index 741c3ab967..0c15104bb3 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 # @@ -182,6 +186,12 @@ parted $DEVICE mkpart primary $SWAP_START 100% parted $DEVICE print +# +# Check if any $DEVICE partitions are mounted after partitioning +# +unmount_device + + # # Format $DEVICE partitions # -- cgit v1.2.3-54-g00ecf