summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGaurav Shah <gauravsh@chromium.org>2012-04-09 15:45:12 -0700
committerGerrit <chrome-bot@google.com>2012-04-09 17:28:23 -0700
commitd170a9d542dd4770c25d5ed82429a55391d88218 (patch)
tree69c032e78cc2cdbfefba5edb650715cefc1601e5
parent036922ed8a2a7f2b7de4d5d8e0fc8aff072dce3d (diff)
downloadvboot-d170a9d542dd4770c25d5ed82429a55391d88218.tar.gz
signer scripts: unmount loop devices without -d arg to umount
Investigations in crosbug.com/26483 revealed a bug in loop device handling if 'umount -d' was called on loop devices mounted using 'mount -o loop'. This CL changes all invocations of umount to remove the -d option since they are always in the context of a loop device creating using -o loop. BUG=chrome-os-partner:8156 TEST=none Change-Id: I96f30664c3f9148d3b57d430002512d8e94b66bc Reviewed-on: https://gerrit.chromium.org/gerrit/19858 Reviewed-by: David James <davidjames@chromium.org> Commit-Ready: Gaurav Shah <gauravsh@chromium.org> Tested-by: Gaurav Shah <gauravsh@chromium.org>
-rwxr-xr-xscripts/image_signing/align_rootfs.sh6
-rwxr-xr-xscripts/image_signing/common_minimal.sh2
-rwxr-xr-xscripts/image_signing/convert_recovery_to_full_ssd.sh2
-rwxr-xr-xscripts/image_signing/convert_recovery_to_ssd.sh2
-rwxr-xr-xscripts/image_signing/remove_test_label.sh2
-rwxr-xr-xscripts/image_signing/set_chronos_password.sh2
-rwxr-xr-xscripts/image_signing/set_lsb_release.sh4
-rwxr-xr-xscripts/image_signing/sign_official_build.sh8
-rwxr-xr-xscripts/image_signing/tag_image.sh2
9 files changed, 15 insertions, 15 deletions
diff --git a/scripts/image_signing/align_rootfs.sh b/scripts/image_signing/align_rootfs.sh
index 5af62020..420dafbe 100755
--- a/scripts/image_signing/align_rootfs.sh
+++ b/scripts/image_signing/align_rootfs.sh
@@ -120,12 +120,12 @@ copy_root_fs() {
local src_root_fs_dir=$(mktemp -d "/tmp/align_root_fs_src_mount_dir.XXXX")
add_cleanup_action "sudo rm -rf \"${src_root_fs_dir}\""
mount_image_partition_ro "${src_image}" 3 "${src_root_fs_dir}"
- add_cleanup_action "sudo umount -d \"${src_root_fs_dir}\""
+ add_cleanup_action "sudo umount \"${src_root_fs_dir}\""
local dst_root_fs_dir=$(mktemp -d "/tmp/align_root_fs_dst_mount_dir.XXXX")
add_cleanup_action "sudo rm -rf \"${dst_root_fs_dir}\""
sudo mount -o loop "${dst_root_fs}" "${dst_root_fs_dir}" -o loop
- add_cleanup_action "sudo umount -d \"${dst_root_fs_dir}\""
+ add_cleanup_action "sudo umount \"${dst_root_fs_dir}\""
# Temporarily make immutable files on the dst rootfs mutable.
# We'll need to track these files in ${immutable_files} so we can make them
@@ -165,7 +165,7 @@ zero_root_fs_free_space() {
local root_fs_dir=$(mktemp -d "/tmp/align_rootfs_zero_free_space_dir.XXXX")
add_cleanup_action "sudo rm -rf \"${root_fs_dir}\""
mount_image_partition "${image}" 3 "${root_fs_dir}"
- add_cleanup_action "sudo umount -d \"${root_fs_dir}\""
+ add_cleanup_action "sudo umount \"${root_fs_dir}\""
info "Zeroing free space in rootfs"
sudo dd if=/dev/zero of="${root_fs_dir}/filler" oflag=sync bs=4096 || true
diff --git a/scripts/image_signing/common_minimal.sh b/scripts/image_signing/common_minimal.sh
index e5f520d4..32f2d6ab 100755
--- a/scripts/image_signing/common_minimal.sh
+++ b/scripts/image_signing/common_minimal.sh
@@ -93,7 +93,7 @@ cleanup_temps_and_mounts() {
if has_needs_to_be_resigned_tag "$i"; then
echo "Warning: image may be modified. Please resign image."
fi
- sudo umount -d $i 2>/dev/null
+ sudo umount $i 2>/dev/null
rm -rf $i
fi
done
diff --git a/scripts/image_signing/convert_recovery_to_full_ssd.sh b/scripts/image_signing/convert_recovery_to_full_ssd.sh
index 1c5b6811..c249a4f7 100755
--- a/scripts/image_signing/convert_recovery_to_full_ssd.sh
+++ b/scripts/image_signing/convert_recovery_to_full_ssd.sh
@@ -66,7 +66,7 @@ sudo cp ${stateful_dir}/vmlinuz_hd.vblock ${tmp_vblock}
echo "Overwriting kernel vblock with SSD kernel vblock"
sudo dd if=${tmp_vblock} of=${SSD_IMAGE} seek=${kerna_offset} bs=512 \
conv=notrunc
-sudo umount -d ${stateful_dir}
+sudo umount ${stateful_dir}
# Zero out Kernel B partition.
echo "Zeroing out Kernel partition B"
diff --git a/scripts/image_signing/convert_recovery_to_ssd.sh b/scripts/image_signing/convert_recovery_to_ssd.sh
index 748522c8..200efee0 100755
--- a/scripts/image_signing/convert_recovery_to_ssd.sh
+++ b/scripts/image_signing/convert_recovery_to_ssd.sh
@@ -72,7 +72,7 @@ tmp_vblock=$(make_temp_file)
mount_image_partition_ro ${IMAGE} 1 ${stateful_dir}
sudo cp ${stateful_dir}/vmlinuz_hd.vblock ${tmp_vblock}
# Unmount before overwriting image to avoid sync issues.
-sudo umount -d ${stateful_dir}
+sudo umount ${stateful_dir}
echo "Overwriting kernel partition A vblock with SSD vblock"
sudo dd if=${tmp_vblock} of=${IMAGE} seek=${kerna_offset} bs=512 conv=notrunc
diff --git a/scripts/image_signing/remove_test_label.sh b/scripts/image_signing/remove_test_label.sh
index 241f9da7..976f5e6d 100755
--- a/scripts/image_signing/remove_test_label.sh
+++ b/scripts/image_signing/remove_test_label.sh
@@ -15,5 +15,5 @@ image=$1
rootfs=$(mktemp -d)
mount_image_partition ${image} 3 ${rootfs}
-trap "umount -d ${rootfs}; rm -rf ${rootfs}" EXIT
+trap "umount ${rootfs}; rm -rf ${rootfs}" EXIT
sed -i 's/test//' "${rootfs}/etc/lsb-release"
diff --git a/scripts/image_signing/set_chronos_password.sh b/scripts/image_signing/set_chronos_password.sh
index e3a33553..a5742305 100755
--- a/scripts/image_signing/set_chronos_password.sh
+++ b/scripts/image_signing/set_chronos_password.sh
@@ -42,7 +42,7 @@ main() {
exit 1
fi
# Prepare for remounting read/write.
- sudo umount -d $rootfs
+ sudo umount $rootfs
fi
mount_image_partition "$image" 3 "$rootfs"
change_chronos_password "$rootfs" "$chronos_password"
diff --git a/scripts/image_signing/set_lsb_release.sh b/scripts/image_signing/set_lsb_release.sh
index 9af0047a..3299d5bf 100755
--- a/scripts/image_signing/set_lsb_release.sh
+++ b/scripts/image_signing/set_lsb_release.sh
@@ -49,9 +49,9 @@ EOF
local rootfs=$(mktemp -d)
mount_image_partition_ro "$image" 3 "$rootfs"
- trap "sudo umount -d $rootfs; rm -rf $rootfs" EXIT
+ trap "sudo umount $rootfs; rm -rf $rootfs" EXIT
if [ -n "$key" ]; then
- sudo umount -d "$rootfs"
+ sudo umount "$rootfs"
mount_image_partition "$image" 3 "$rootfs"
set_lsb_release_keyval "$rootfs" "$key" "$value"
touch "$image" # Updates the image modification time.
diff --git a/scripts/image_signing/sign_official_build.sh b/scripts/image_signing/sign_official_build.sh
index 9b67ade1..bab99264 100755
--- a/scripts/image_signing/sign_official_build.sh
+++ b/scripts/image_signing/sign_official_build.sh
@@ -203,11 +203,11 @@ update_rootfs_hash() {
mount_image_partition_ro "${image}" 3 "${rootfs_dir}"
if has_needs_to_be_resigned_tag "${rootfs_dir}"; then
# remount as RW
- sudo umount -d "${rootfs_dir}"
+ sudo umount "${rootfs_dir}"
mount_image_partition "${image}" 3 "${rootfs_dir}"
sudo rm -f "${rootfs_dir}/${TAG_NEEDS_TO_BE_SIGNED}"
fi
- sudo umount -d "${rootfs_dir}"
+ sudo umount "${rootfs_dir}"
local rootfs_image=$(make_temp_file)
extract_image_partition ${image} 3 ${rootfs_image}
@@ -331,7 +331,7 @@ resign_firmware_payload() {
local rootfs_dir=$(make_temp_dir)
mount_image_partition ${image} 3 ${rootfs_dir}
# Force unmount of the rootfs on function exit as it is needed later.
- trap "sudo umount -d ${rootfs_dir}" RETURN
+ trap "sudo umount ${rootfs_dir}" RETURN
local firmware_bundle="${rootfs_dir}/usr/sbin/chromeos-firmwareupdate"
local shellball_dir=$(make_temp_dir)
@@ -522,7 +522,7 @@ sign_for_recovery() {
local stateful_dir=$(make_temp_dir)
mount_image_partition ${image_bin} 1 ${stateful_dir}
sudo cp ${temp_out_vb} ${stateful_dir}/vmlinuz_hd.vblock
- sudo umount -d "${stateful_dir}"
+ sudo umount "${stateful_dir}"
# Update the Kernel B hash in Kernel A command line
local old_kerna_config=$(grab_kernel_config "${image_bin}" 2)
diff --git a/scripts/image_signing/tag_image.sh b/scripts/image_signing/tag_image.sh
index 8ef7ff47..aa19871c 100755
--- a/scripts/image_signing/tag_image.sh
+++ b/scripts/image_signing/tag_image.sh
@@ -215,7 +215,7 @@ process_all_lsb_mods "${rootfs}" ${FLAGS_FALSE}
if [ ${g_modified} = ${FLAGS_TRUE} ]; then
# remount as RW (we can't use mount -o rw,remount because of loop device)
- sudo umount -d "${rootfs}"
+ sudo umount "${rootfs}"
mount_image_partition "${IMAGE}" 3 "${rootfs}"
# second round, apply the modification to image.