From dd3a901210d865cf47710f58b2bceb267cd76d75 Mon Sep 17 00:00:00 2001 From: Stanislav Kinsburskiy Date: Thu, 6 Oct 2016 16:21:00 +0300 Subject: [PATCH] systemd-autofs-restart.sh: explicitly return result from get_fs_type This helper uses other binaries (like awk), which can fail or be killed. It this case might be, that no mountpoint is found. Or, on other hand, the whole mount point path is wrong, and is absend in mountinfo. Return explicit error in this case. Without this patch, script will proceed further, and, since returned value is empty, it doesn't equal to "autofs", so script will try to bind-mount autofs mount, resulting in hung. travis-ci: success for systemd-autofs-restart.sh: explicitly return result from get_fs_type Signed-off-by: Stanislav Kinsburskiy Signed-off-by: Pavel Emelyanov --- scripts/systemd-autofs-restart.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/systemd-autofs-restart.sh b/scripts/systemd-autofs-restart.sh index 8d4f71ef5..40dcb917d 100755 --- a/scripts/systemd-autofs-restart.sh +++ b/scripts/systemd-autofs-restart.sh @@ -73,7 +73,13 @@ function get_fs_type { top_mount_fs_type=$mnt_fs_type done < "/proc/$CRTOOLS_INIT_PID/mountinfo" + if [ -z "$top_mount_fs_type" ]; then + echo "Failed to find $mountpoint mountpoint" + return 1 + fi + echo $top_mount_fs_type + return 0 } function bind_mount { @@ -92,7 +98,7 @@ function save_mountpoint { top_mount_fs_type=$(get_fs_type $mountpoint) if [ $? -ne 0 ]; then - echo "Failed to discover $mountpoint mount point type" + echo "$top_mount_fs_type" return fi