base-files: upgrade: try umount lvm and loop devices
[openwrt/openwrt.git] / package / base-files / files / lib / upgrade / stage2
index 30ad19f7f1b3e64f044eafaceda90745093789a3..45fb98d88969890d277b16dda94568b0189e5ac8 100755 (executable)
@@ -64,6 +64,10 @@ switch_to_ramfs() {
        /bin/mount -o remount,ro /mnt
        /bin/umount -l /mnt
 
+       grep -e "^/dev/dm-.*" -e "^/dev/loop.*" /proc/mounts | while read bdev mp _r; do
+               umount $mp
+       done
+
        [ "$RAMFS_COPY_LOSETUP" ] && losetup -D
        [ "$RAMFS_COPY_LVM" ] && {
                mkdir -p /tmp/lvm/cache