Skip to content

Commit 0c631ef

Browse files
committed
fix(dmsquash-live): correct regression introduced with shellcheck changes
`"$opt"` with empty `opt` will give errors for `losetup`. #1576 Rename the variable and set the arguments dynamically, if the variable is set.
1 parent 5c5b73c commit 0c631ef

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

modules.d/90dmsquash-live/dmsquash-live-root.sh

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -129,11 +129,9 @@ do_live_overlay() {
129129
# need to know where to look for the overlay
130130
if [ -z "$setup" -a -n "$devspec" -a -n "$pathspec" -a -n "$overlay" ]; then
131131
mkdir -m 0755 -p /run/initramfs/overlayfs
132-
opt=''
133-
[ -n "$readonly_overlay" ] && opt=-r
134132
mount -n -t auto "$devspec" /run/initramfs/overlayfs || :
135133
if [ -f /run/initramfs/overlayfs$pathspec -a -w /run/initramfs/overlayfs$pathspec ]; then
136-
OVERLAY_LOOPDEV=$(losetup -f --show $opt /run/initramfs/overlayfs$pathspec)
134+
OVERLAY_LOOPDEV=$(losetup -f --show ${readonly_overlay:+-r} /run/initramfs/overlayfs$pathspec)
137135
over=$OVERLAY_LOOPDEV
138136
umount -l /run/initramfs/overlayfs || :
139137
oltype=$(det_img_fs "$OVERLAY_LOOPDEV")
@@ -148,11 +146,11 @@ do_live_overlay() {
148146
fi
149147
setup="yes"
150148
else
151-
mount -n -t "$oltype" $opt "$OVERLAY_LOOPDEV" /run/initramfs/overlayfs
149+
mount -n -t "$oltype" ${readonly_overlay:+-r} "$OVERLAY_LOOPDEV" /run/initramfs/overlayfs
152150
if [ -d /run/initramfs/overlayfs/overlayfs ] \
153151
&& [ -d /run/initramfs/overlayfs/ovlwork ]; then
154-
ln -s /run/initramfs/overlayfs/overlayfs /run/overlayfs$opt
155-
ln -s /run/initramfs/overlayfs/ovlwork /run/ovlwork$opt
152+
ln -s /run/initramfs/overlayfs/overlayfs /run/overlayfs${readonly_overlay:+-r}
153+
ln -s /run/initramfs/overlayfs/ovlwork /run/ovlwork${readonly_overlay:+-r}
156154
if [ -z "$overlayfs" ] && [ -n "$DRACUT_SYSTEMD" ]; then
157155
reloadsysrootmountunit=":>/xor_overlayfs;"
158156
fi
@@ -162,8 +160,8 @@ do_live_overlay() {
162160
fi
163161
elif [ -d /run/initramfs/overlayfs$pathspec ] \
164162
&& [ -d /run/initramfs/overlayfs$pathspec/../ovlwork ]; then
165-
ln -s /run/initramfs/overlayfs$pathspec /run/overlayfs$opt
166-
ln -s /run/initramfs/overlayfs$pathspec/../ovlwork /run/ovlwork$opt
163+
ln -s /run/initramfs/overlayfs$pathspec /run/overlayfs${readonly_overlay:+-r}
164+
ln -s /run/initramfs/overlayfs$pathspec/../ovlwork /run/ovlwork${readonly_overlay:+-r}
167165
if [ -z "$overlayfs" ] && [ -n "$DRACUT_SYSTEMD" ]; then
168166
reloadsysrootmountunit=":>/xor_overlayfs;"
169167
fi
@@ -336,13 +334,13 @@ if [ -n "$FSIMG" ]; then
336334
fi
337335
FSIMG=/run/initramfs/fsimg/rootfs.img
338336
fi
339-
opt=-r
340337
# For writable DM images...
338+
readonly_base=1
341339
if [ -z "$SQUASHED" -a -n "$live_ram" -a -z "$overlayfs" ] \
342340
|| [ -n "$writable_fsimg" ] \
343341
|| [ "$overlay" = none -o "$overlay" = None -o "$overlay" = NONE ]; then
344342
if [ -z "$readonly_overlay" ]; then
345-
opt=''
343+
unset readonly_base
346344
setup=rw
347345
else
348346
setup=yes
@@ -351,7 +349,7 @@ if [ -n "$FSIMG" ]; then
351349
if [ "$FSIMG" = "$SQUASHED" ]; then
352350
BASE_LOOPDEV=$SQUASHED_LOOPDEV
353351
else
354-
BASE_LOOPDEV=$(losetup -f --show "$opt" $FSIMG)
352+
BASE_LOOPDEV=$(losetup -f --show ${readonly_base:+-r} $FSIMG)
355353
sz=$(blockdev --getsz "$BASE_LOOPDEV")
356354
fi
357355
if [ "$setup" = rw ]; then

0 commit comments

Comments
 (0)