On Mon, May 25, 2020 at 5:25 AM cgxu <cgxu519@xxxxxxxxxxxx> wrote: > > On 5/20/20 11:09 PM, Filipe Manana wrote: > > On Tue, May 19, 2020 at 9:10 AM Chengguang Xu <cgxu519@xxxxxxxxxxxx> wrote: > >> > >> This test checks data integrity when remounting from > >> rw to ro mode. > >> > >> Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxxxxx> > >> --- > >> v1->v2: > >> - Add to shutdown greoup. > >> - Change case number to 597 > >> > >> tests/generic/597 | 54 +++++++++++++++++++++++++++++++++++++++++++ > >> tests/generic/597.out | 2 ++ > >> tests/generic/group | 1 + > >> 3 files changed, 57 insertions(+) > >> create mode 100755 tests/generic/597 > >> create mode 100644 tests/generic/597.out > >> > >> diff --git a/tests/generic/597 b/tests/generic/597 > >> new file mode 100755 > >> index 00000000..d96e750b > >> --- /dev/null > >> +++ b/tests/generic/597 > >> @@ -0,0 +1,54 @@ > >> +#! /bin/bash > >> +# SPDX-License-Identifier: GPL-2.0 > >> +# Copyright (c) 2020 Chengguang Xu <cgxu519@xxxxxxxxxxxx>. > >> +# All Rights Reserved. > >> +# > >> +# FS QA Test 597 > >> +# > >> +# Test data integrity for ro remount. > >> +# > >> +seq=`basename $0` > >> +seqres=$RESULT_DIR/$seq > >> +echo "QA output created by $seq" > >> + > >> +here=`pwd` > >> +tmp=/tmp/$$ > >> +status=0 > >> +trap "_cleanup; exit \$status" 0 1 2 3 15 > >> + > >> +_cleanup() > >> +{ > >> + cd / > >> + rm -f $tmp.* > >> +} > >> + > >> +# 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 > >> +_supported_fs generic > >> +_supported_os Linux > >> +_require_fssum > >> +_require_scratch > >> +_require_scratch_shutdown > > > > Couldn't the test be using dm's flakey instead of shutdown? > > As shutdown is not implemented by all filesystems (btrfs for example), > > it would allow more coverage. > > > > Thanks for the suggestion, I tried with dmflakey but unfortunately it > could not work on overlayfs, a possible solution is that move current > test case to overlay specific directory and create new test case with > dmflakey for generic purpose. > Or you can create an abstraction for shutdown/dmflakey, because this test doesn't care which one you use: _require_scratch_drop _init_scratch_drop _mount_scratch_drop _scratch_drop_and_remount _cleanup_scratch_drop But IMO, this could also be done after merging test to increase test coverage. Thanks, Amir.