Message ID | da8894afef8f5186ee2876c6a3cff32bd28e8cb6.1603196609.git.anand.jain@oracle.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | add seed delete test case and fix btrfs/163 | expand |
On Tue, Oct 20, 2020 at 1:34 PM Anand Jain <anand.jain@oracle.com> wrote: > > Make this test case inline with the kernel patch [1] changes > [1] c6a5d954950c btrfs: fix replace of seed device > > So use the sprout device as the replace target instead of the seed device. > This change is compatible with the older kernels. > > While at this, this patch also fixes a typo fix as well. > > Signed-off-by: Anand Jain <anand.jain@oracle.com> Reviewed-by: Filipe Manana <fdmanana@suse.com> Looks good, thanks. > --- > v3: > add kernel commit id in the change log and in the header. > remove directio in xfs_io. > rename replace_seed() to replace_sprout(). > > v2: > none > > tests/btrfs/163 | 25 ++++++++++++++++++------- > tests/btrfs/163.out | 5 ++++- > 2 files changed, 22 insertions(+), 8 deletions(-) > > diff --git a/tests/btrfs/163 b/tests/btrfs/163 > index 3047862f9e15..735881c6936e 100755 > --- a/tests/btrfs/163 > +++ b/tests/btrfs/163 > @@ -4,11 +4,15 @@ > # > # FS QA Test 163 > # > -# Test case to verify that a seed device can be replaced > +# Test case to verify that a sprouted device can be replaced > # Create a seed device > # Create a sprout device > # Remount RW > -# Run device replace on the seed device > +# Run device replace on the sprout device > +# > +# Depends on the kernel patch > +# c6a5d954950c btrfs: fail replace of seed device > + > seq=`basename $0` > seqres=$RESULT_DIR/$seq > echo "QA output created by $seq" > @@ -38,6 +42,7 @@ rm -f $seqres.full > _supported_fs btrfs > _require_command "$BTRFS_TUNE_PROG" btrfstune > _require_scratch_dev_pool 3 > +_require_btrfs_forget_or_module_loadable > > _scratch_dev_pool_get 3 > > @@ -51,7 +56,7 @@ create_seed() > run_check _mount $dev_seed $SCRATCH_MNT > $XFS_IO_PROG -f -d -c "pwrite -S 0xab 0 4M" $SCRATCH_MNT/foobar >\ > /dev/null > - echo -- gloden -- > + echo -- golden -- > od -x $SCRATCH_MNT/foobar > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > _scratch_unmount > @@ -63,22 +68,28 @@ add_sprout() > { > _run_btrfs_util_prog device add -f $dev_sprout $SCRATCH_MNT > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > + _mount -o remount,rw $dev_sprout $SCRATCH_MNT > + $XFS_IO_PROG -f -c "pwrite -S 0xcd 0 4M" $SCRATCH_MNT/foobar2 >\ > + /dev/null > } > > -replace_seed() > +replace_sprout() > { > - _run_btrfs_util_prog replace start -fB $dev_seed $dev_replace_tgt $SCRATCH_MNT > + _run_btrfs_util_prog replace start -fB $dev_sprout $dev_replace_tgt $SCRATCH_MNT > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > _scratch_unmount > - run_check _mount $dev_replace_tgt $SCRATCH_MNT > + _btrfs_forget_or_module_reload > + run_check _mount -o device=$dev_seed $dev_replace_tgt $SCRATCH_MNT > echo -- sprout -- > od -x $SCRATCH_MNT/foobar > + od -x $SCRATCH_MNT/foobar2 > _scratch_unmount > > } > > seed_is_mountable() > { > + _btrfs_forget_or_module_reload > run_check _mount $dev_seed $SCRATCH_MNT > _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT > _scratch_unmount > @@ -86,7 +97,7 @@ seed_is_mountable() > > create_seed > add_sprout > -replace_seed > +replace_sprout > > seed_is_mountable > > diff --git a/tests/btrfs/163.out b/tests/btrfs/163.out > index 91f6f5b6f48a..351ef7b040b2 100644 > --- a/tests/btrfs/163.out > +++ b/tests/btrfs/163.out > @@ -1,5 +1,5 @@ > QA output created by 163 > --- gloden -- > +-- golden -- > 0000000 abab abab abab abab abab abab abab abab > * > 20000000 > @@ -7,3 +7,6 @@ QA output created by 163 > 0000000 abab abab abab abab abab abab abab abab > * > 20000000 > +0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd > +* > +20000000 > -- > 2.25.1 >
diff --git a/tests/btrfs/163 b/tests/btrfs/163 index 3047862f9e15..735881c6936e 100755 --- a/tests/btrfs/163 +++ b/tests/btrfs/163 @@ -4,11 +4,15 @@ # # FS QA Test 163 # -# Test case to verify that a seed device can be replaced +# Test case to verify that a sprouted device can be replaced # Create a seed device # Create a sprout device # Remount RW -# Run device replace on the seed device +# Run device replace on the sprout device +# +# Depends on the kernel patch +# c6a5d954950c btrfs: fail replace of seed device + seq=`basename $0` seqres=$RESULT_DIR/$seq echo "QA output created by $seq" @@ -38,6 +42,7 @@ rm -f $seqres.full _supported_fs btrfs _require_command "$BTRFS_TUNE_PROG" btrfstune _require_scratch_dev_pool 3 +_require_btrfs_forget_or_module_loadable _scratch_dev_pool_get 3 @@ -51,7 +56,7 @@ create_seed() run_check _mount $dev_seed $SCRATCH_MNT $XFS_IO_PROG -f -d -c "pwrite -S 0xab 0 4M" $SCRATCH_MNT/foobar >\ /dev/null - echo -- gloden -- + echo -- golden -- od -x $SCRATCH_MNT/foobar _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT _scratch_unmount @@ -63,22 +68,28 @@ add_sprout() { _run_btrfs_util_prog device add -f $dev_sprout $SCRATCH_MNT _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT + _mount -o remount,rw $dev_sprout $SCRATCH_MNT + $XFS_IO_PROG -f -c "pwrite -S 0xcd 0 4M" $SCRATCH_MNT/foobar2 >\ + /dev/null } -replace_seed() +replace_sprout() { - _run_btrfs_util_prog replace start -fB $dev_seed $dev_replace_tgt $SCRATCH_MNT + _run_btrfs_util_prog replace start -fB $dev_sprout $dev_replace_tgt $SCRATCH_MNT _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT _scratch_unmount - run_check _mount $dev_replace_tgt $SCRATCH_MNT + _btrfs_forget_or_module_reload + run_check _mount -o device=$dev_seed $dev_replace_tgt $SCRATCH_MNT echo -- sprout -- od -x $SCRATCH_MNT/foobar + od -x $SCRATCH_MNT/foobar2 _scratch_unmount } seed_is_mountable() { + _btrfs_forget_or_module_reload run_check _mount $dev_seed $SCRATCH_MNT _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT _scratch_unmount @@ -86,7 +97,7 @@ seed_is_mountable() create_seed add_sprout -replace_seed +replace_sprout seed_is_mountable diff --git a/tests/btrfs/163.out b/tests/btrfs/163.out index 91f6f5b6f48a..351ef7b040b2 100644 --- a/tests/btrfs/163.out +++ b/tests/btrfs/163.out @@ -1,5 +1,5 @@ QA output created by 163 --- gloden -- +-- golden -- 0000000 abab abab abab abab abab abab abab abab * 20000000 @@ -7,3 +7,6 @@ QA output created by 163 0000000 abab abab abab abab abab abab abab abab * 20000000 +0000000 cdcd cdcd cdcd cdcd cdcd cdcd cdcd cdcd +* +20000000
Make this test case inline with the kernel patch [1] changes [1] c6a5d954950c btrfs: fix replace of seed device So use the sprout device as the replace target instead of the seed device. This change is compatible with the older kernels. While at this, this patch also fixes a typo fix as well. Signed-off-by: Anand Jain <anand.jain@oracle.com> --- v3: add kernel commit id in the change log and in the header. remove directio in xfs_io. rename replace_seed() to replace_sprout(). v2: none tests/btrfs/163 | 25 ++++++++++++++++++------- tests/btrfs/163.out | 5 ++++- 2 files changed, 22 insertions(+), 8 deletions(-)