volatile-binds: Do not create workdir if OverlayFS is disabled

When the mountpoint parameter is a directory, the mount-copybind will
first try to use OverlayFS. Because of that, it needs to create the
OverlayFS workdir (determined by the overlay_workdir).

But if the environment variable MOUNT_COPYBIND_AVOID_OVERLAYFS is set
to "1", the script uses bind mount. In that case, the overlay_workdir
is useless, leaving the spec parent directory in a dirty state.

This commit changes mount-copybind so that the overlay_workdir is only
created when MOUNT_COPYBIND_AVOID_OVERLAYFS is not set to 1.

(From OE-Core rev: 323765607f262b5fea0f19e8a05aeffe5076235a)

Signed-off-by: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ricardo Simoes
2024-07-18 08:46:33 +02:00
committed by Richard Purdie
parent 18225f0bae
commit c32490b139

View File

@@ -45,7 +45,9 @@ if [ -d "$mountpoint" ]; then
# Fast version of calculating `dirname ${spec}`/.`basename ${spec}`-work
overlay_workdir="${spec%/*}/.${spec##*/}-work"
mkdir "${overlay_workdir}"
if [ "$MOUNT_COPYBIND_AVOID_OVERLAYFS" != 1 ]; then
mkdir "${overlay_workdir}"
fi
# Try to mount using overlay, which is must faster than copying files.
# If that fails, fall back to slower copy.