Message ID | 20220226152520.289069-1-cgxu519@mykernel.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | overlay/079: test for parent directory consistancy in copy-up | expand |
On Sat, Feb 26, 2022 at 8:15 PM Chengguang Xu <cgxu519@mykernel.net> wrote: > > Make sure the change for parent direcotry get synced in copy-up. > > Signed-off-by: Chengguang Xu <cgxu519@mykernel.net> > --- > tests/overlay/079 | 50 +++++++++++++++++++++++++++++++++++++++++++ > tests/overlay/079.out | 2 ++ > 2 files changed, 52 insertions(+) > create mode 100755 tests/overlay/079 > create mode 100644 tests/overlay/079.out > > diff --git a/tests/overlay/079 b/tests/overlay/079 > new file mode 100755 > index 00000000..c542cfc9 > --- /dev/null > +++ b/tests/overlay/079 > @@ -0,0 +1,50 @@ > +#! /bin/bash > +# SPDX-License-Identifier: GPL-2.0 > +# Copyright (c) 2022 Chengguang Xu <cgxu519@mykernel.net>. > +# All Rights Reserved. > +# > +# FS QA Test 079 > +# > +# Test copy up consistency for parent directory. > +# > +. ./common/preamble > +_begin_fstest copyup quick > + > +# get standard environment, filters and checks > +. ./common/rc > +. ./common/filter > + > +# remove previous $seqres.full before test > +rm -f $seqres.full > + > +# real QA test starts here > + > +# Modify as appropriate. > +_supported_fs overlay > +_require_scratch > +#_require_command "$FLOCK_PROG" flock > +_require_scratch_shutdown > + > + > +# Remove all files from previous tests > +_scratch_mkfs > + > +lowerdir=$OVL_BASE_SCRATCH_MNT/$OVL_LOWER > +upperdir=$OVL_BASE_SCRATCH_MNT/$OVL_UPPER > +mkdir -p $lowerdir/foo_dir > +echo a > /tmp/foo > +echo a > $lowerdir/foo_dir/foo > + > +# Mounting overlay > +_scratch_mount > + > +touch $SCRATCH_MNT/foo_dir/foo > +_scratch_shutdown > +_scratch_cycle_mount > + > +echo "Silence is golden" > +diff /tmp/foo $upperdir/foo_dir/foo > + NACK. Absolutely no reason for us to guarantee that file is copied up if the user did not request explicit sync on the file or the directory. Really, what is driving you to make this change and test? If it is a real world use case, then please encode the real use case in the form of a test. Thanks, Amir.
diff --git a/tests/overlay/079 b/tests/overlay/079 new file mode 100755 index 00000000..c542cfc9 --- /dev/null +++ b/tests/overlay/079 @@ -0,0 +1,50 @@ +#! /bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (c) 2022 Chengguang Xu <cgxu519@mykernel.net>. +# All Rights Reserved. +# +# FS QA Test 079 +# +# Test copy up consistency for parent directory. +# +. ./common/preamble +_begin_fstest copyup quick + +# get standard environment, filters and checks +. ./common/rc +. ./common/filter + +# remove previous $seqres.full before test +rm -f $seqres.full + +# real QA test starts here + +# Modify as appropriate. +_supported_fs overlay +_require_scratch +#_require_command "$FLOCK_PROG" flock +_require_scratch_shutdown + + +# Remove all files from previous tests +_scratch_mkfs + +lowerdir=$OVL_BASE_SCRATCH_MNT/$OVL_LOWER +upperdir=$OVL_BASE_SCRATCH_MNT/$OVL_UPPER +mkdir -p $lowerdir/foo_dir +echo a > /tmp/foo +echo a > $lowerdir/foo_dir/foo + +# Mounting overlay +_scratch_mount + +touch $SCRATCH_MNT/foo_dir/foo +_scratch_shutdown +_scratch_cycle_mount + +echo "Silence is golden" +diff /tmp/foo $upperdir/foo_dir/foo + +# success, all done +status=0 +exit diff --git a/tests/overlay/079.out b/tests/overlay/079.out new file mode 100644 index 00000000..dc0bbb6a --- /dev/null +++ b/tests/overlay/079.out @@ -0,0 +1,2 @@ +QA output created by 079 +Silence is golden
Make sure the change for parent direcotry get synced in copy-up. Signed-off-by: Chengguang Xu <cgxu519@mykernel.net> --- tests/overlay/079 | 50 +++++++++++++++++++++++++++++++++++++++++++ tests/overlay/079.out | 2 ++ 2 files changed, 52 insertions(+) create mode 100755 tests/overlay/079 create mode 100644 tests/overlay/079.out