aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmir Goldstein <amir73il@gmail.com>2023-06-18 15:45:06 +0300
committerZorro Lang <zlang@kernel.org>2023-07-07 21:31:20 +0800
commit06cee93225c9f9ea41d04efd6af911f7abb6e6a1 (patch)
tree587edaa10323a98e7344cacb60d5ff015a619f33
parent60054d5118fdc020c42323062a4c82370a1c0a8d (diff)
downloadxfstests-dev-06cee93225c9f9ea41d04efd6af911f7abb6e6a1.tar.gz
generic/604: Fix for overlayfs
Since v6.3, I noticed that generic/604 does not run on overlayfs because: generic/604 -- upper fs needs to support d_type This is odd because the base fs I am using (xfs) does support d_type. The reason is that for overlayfs, this sequence run by this test: _scratch_unmount & _scratch_mount Translates to: umount $OVL_MNT; umount $BASE_MNT & mount $BASE_MNT ...; mount $OVL_MNT ... Which can end up reordred as: umount $OVL_MNT; mount $BASE_MNT ... umount $BASE_MNT & mount $OVL_MNT ... and overlayfs is trying to use a non-existing upper fs. Use UMOUNT_PROG directly instead of the _scratch_unmount helper, to avoid unmounting the base fs. Incidently, the only thing that has changed in overlayfs in v6.3 is idmapped mounts support and the test in question was run without idmapped mounts enabled, so the cahnge in behavior must be related to some subtle timing change. Signed-off-by: Amir Goldstein <amir73il@gmail.com> Reviewed-by: Christian Brauner <brauner@kernel.org> Signed-off-by: Zorro Lang <zlang@kernel.org>
-rwxr-xr-xtests/generic/6044
1 files changed, 3 insertions, 1 deletions
diff --git a/tests/generic/604 b/tests/generic/604
index 9c53fd5784..cc6a4b214f 100755
--- a/tests/generic/604
+++ b/tests/generic/604
@@ -24,7 +24,9 @@ _scratch_mount
for i in $(seq 0 500); do
$XFS_IO_PROG -f -c "pwrite 0 4K" $SCRATCH_MNT/$i >/dev/null
done
-_scratch_unmount &
+# For overlayfs, avoid unmouting the base fs after _scratch_mount
+# tries to mount the base fs
+$UMOUNT_PROG $SCRATCH_MNT &
_scratch_mount
wait