[PATCH 08/10] xfs/503: split copy and metadump into two tests

Darrick J. Wong
2024-01-25T19:06:04Z

From: Darrick J. Wong <djwong@kernel.org>

This test examines the behavior of xfs_copy and xfs_metadump. Metadump
now supports capturing external log contents, but copy does not. Split
the test into two to improve coverage on multidevice filesystems.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
tests/xfs/1876 | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++
tests/xfs/1876.out | 4 ++++
tests/xfs/503 | 17 +++-------------
tests/xfs/503.out | 2 --
4 files changed, 61 insertions(+), 16 deletions(-)
create mode 100755 tests/xfs/1876
create mode 100755 tests/xfs/1876.out

diff --git a/tests/xfs/1876 b/tests/xfs/1876
new file mode 100755
index 0000000000..feeb82fca0
--- /dev/null
+++ b/tests/xfs/1876
@@ -0,0 +1,54 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0+
+# Copyright (c) 2019 Oracle, Inc. All Rights Reserved.
+#
+# FS QA Test No. 1876
+#
+# Populate a XFS filesystem and ensure that xfs_copy works properly.
+#
+. ./common/preamble
+_begin_fstest auto copy
+
+_register_cleanup "_cleanup" BUS
+
+# Override the default cleanup function.
+_cleanup()
+{
+ cd /
+ rm -rf $tmp.* $testdir
+}
+
+# Import common functions.
+. ./common/filter
+. ./common/populate
+
+testdir=$TEST_DIR/test-$seq
+
+# real QA test starts here
+_supported_fs xfs
+
+_require_xfs_copy
+_require_scratch_nocheck
+_require_populate_commands
+_xfs_skip_online_rebuild
+_xfs_skip_offline_rebuild
+
+echo "Format and populate"
+_scratch_populate_cached nofill > $seqres.full 2>&1
+
+mkdir -p $testdir
+copy_file=$testdir/copy.img
+
+echo copy
+$XFS_COPY_PROG $SCRATCH_DEV $copy_file >> $seqres.full
+_check_scratch_fs $copy_file
+
+echo recopy
+$XFS_COPY_PROG $copy_file $SCRATCH_DEV >> $seqres.full
+_scratch_mount
+_check_scratch_fs
+_scratch_unmount
+
+# success, all done
+status=0
+exit
diff --git a/tests/xfs/1876.out b/tests/xfs/1876.out
new file mode 100755
index 0000000000..0bf8e156c0
--- /dev/null
+++ b/tests/xfs/1876.out
@@ -0,0 +1,4 @@
+QA output created by 1876
+Format and populate
+copy
+recopy
diff --git a/tests/xfs/503 b/tests/xfs/503
index 79bbbdd26d..606fcbdcc4 100755
--- a/tests/xfs/503
+++ b/tests/xfs/503
@@ -4,11 +4,11 @@
#
# FS QA Test No. 503
#
-# Populate a XFS filesystem and ensure that metadump, mdrestore, and copy
-# all work properly.
+# Populate a XFS filesystem and ensure that metadump and mdrestore all work
+# properly.
#
. ./common/preamble
-_begin_fstest auto copy metadump
+_begin_fstest auto metadump

_register_cleanup "_cleanup" BUS

@@ -32,7 +32,6 @@ _supported_fs xfs

_require_command "$XFS_MDRESTORE_PROG" "xfs_mdrestore"
_require_loop
-_require_xfs_copy
_require_scratch_nocheck
_require_populate_commands
_xfs_skip_online_rebuild
@@ -58,16 +57,6 @@ _verify_metadumps '-o'
echo "metadump ao and mdrestore"
_verify_metadumps '-a -o'

-echo copy
-$XFS_COPY_PROG $SCRATCH_DEV $copy_file >> $seqres.full
-_check_scratch_fs $copy_file
-
-echo recopy
-$XFS_COPY_PROG $copy_file $SCRATCH_DEV >> $seqres.full
-_scratch_mount
-_check_scratch_fs
-_scratch_unmount
-
# success, all done
status=0
exit
diff --git a/tests/xfs/503.out b/tests/xfs/503.out
index 5e7488456d..7f3d3a5f24 100644
--- a/tests/xfs/503.out
+++ b/tests/xfs/503.out
@@ -4,5 +4,3 @@ metadump and mdrestore
metadump a and mdrestore
metadump o and mdrestore
metadump ao and mdrestore
-copy
-recopy