aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmir Goldstein <amir73il@gmail.com>2023-07-10 11:07:10 +0200
committerZorro Lang <zlang@kernel.org>2023-07-23 12:56:22 +0800
commit23f643a0c3e4d2f6e09c0f75bea70d9adbc1b04f (patch)
treecfde434fe1980379f2f4578b3a99f0716ba9d228
parent66fcf86bbaea42ee7cefc3cc4e97814e51fa0a84 (diff)
downloadxfstests-dev-23f643a0c3e4d2f6e09c0f75bea70d9adbc1b04f.tar.gz
overlay: add helper for mounting rdonly overlay
Allow passing empty upperdir to _overlay_mount_dirs(). Signed-off-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Alexander Larsson <alexl@redhat.com> Reviewed-by: Zorro Lang <zlang@redhat.com> Signed-off-by: Zorro Lang <zlang@kernel.org>
-rw-r--r--common/overlay8
1 files changed, 6 insertions, 2 deletions
diff --git a/common/overlay b/common/overlay
index 20cafeb157..452b3b0994 100644
--- a/common/overlay
+++ b/common/overlay
@@ -17,15 +17,19 @@ if [ -n "$OVL_BASE_FSTYP" ];then
fi
# helper function to do the actual overlayfs mount operation
+# accepts "-" as upperdir for non-upper overlayfs
_overlay_mount_dirs()
{
local lowerdir=$1
local upperdir=$2
local workdir=$3
shift 3
+ local diropts="-olowerdir=$lowerdir"
- $MOUNT_PROG -t overlay -o lowerdir=$lowerdir -o upperdir=$upperdir \
- -o workdir=$workdir `_common_dev_mount_options $*`
+ [ -n "$upperdir" ] && [ "$upperdir" != "-" ] && \
+ diropts+=",upperdir=$upperdir,workdir=$workdir"
+
+ $MOUNT_PROG -t overlay $diropts `_common_dev_mount_options $*`
}
# Mount with same options/mnt/dev of scratch mount, but optionally