On 11/06/2014 03:23 AM, Lukasz Majewski wrote:
This change helps to run script on machines with quite long uptime.
Without this the following error emerges:

File: ./dat_14M.img
umount: /mnt/tmp-ums-test: device is busy.
         (In some cases useful info about processes that use
          the device is found by lsof(8) or fuser(1))
TX: md5sum:083d3d22b542d3ecba61b12d17e03f9f
mount: /dev/sdd6 already mounted or /mnt/tmp-ums-test busy
mount: according to mtab, /dev/sdd6 is already mounted on /mnt/tmp-ums-test

diff --git a/test/ums/ums_gadget_test.sh b/test/ums/ums_gadget_test.sh

      cp ./$1 $MNT_DIR
+    sleep 2
      umount $MNT_DIR

I don't think there's any guarantee the "2" is the exact correct amount of time to sleep; I presume you derived the value by trying some values until you found one that works, and so the actual value required may vary from system to system. How about something like the following, which I use in a script that copies a new kernel to an SD card, where I experienced a similar issue:

while true; do
    sudo umount /mnt/C-ROOT/
    if [ $? -eq 0 ]; then
        break
    fi
    echo sleeping to wait for umount...
    sleep 1
done
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to