mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
shared,generic: move tests using duperemove to generic/
Add _require_scratch_duperemove which validates that the file system supports duperemove. This allows us to move three tests from shared/ to generic/. This means these tests will automatically adapt when duperemove supports other file systems. Tests moved are: shared/008 --> generic/559 shared/009 --> generic/560 shared/010 --> generic/561 Signed-off-by: Theodore Ts'o <tytso@mit.edu> Reviewed-by: Eryu Guan <guaneryu@gmail.com> Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
@@ -75,6 +75,24 @@ _require_scratch_reflink()
|
||||
_scratch_unmount
|
||||
}
|
||||
|
||||
# this test requires duperemove working for the file system
|
||||
_require_scratch_duperemove()
|
||||
{
|
||||
_require_scratch
|
||||
_require_command "$DUPEREMOVE_PROG" duperemove
|
||||
|
||||
_scratch_mkfs > /dev/null
|
||||
_scratch_mount
|
||||
dd if=/dev/zero of="$SCRATCH_MNT/file1" bs=128k count=1 >& /dev/null
|
||||
dd if=/dev/zero of="$SCRATCH_MNT/file2" bs=128k count=1 >& /dev/null
|
||||
if ! "$DUPEREMOVE_PROG" -d "$SCRATCH_MNT/file1" \
|
||||
"$SCRATCH_MNT/file2" >& /dev/null ; then
|
||||
_scratch_unmount
|
||||
_notrun "duperemove does not support file system type: $FSTYP"
|
||||
fi
|
||||
_scratch_unmount
|
||||
}
|
||||
|
||||
# this test requires scratch fs to report explicit SHARED flag
|
||||
# e.g.
|
||||
# 0 4K 8K
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (c) 2018 Red Hat Inc. All Rights Reserved.
|
||||
#
|
||||
# FS QA Test 008
|
||||
# FS QA Test generic/559
|
||||
#
|
||||
# Dedupe a single big file and verify integrity
|
||||
#
|
||||
@@ -29,12 +29,10 @@ _cleanup()
|
||||
# remove previous $seqres.full before test
|
||||
rm -f $seqres.full
|
||||
|
||||
# duperemove only supports btrfs and xfs (with reflink feature).
|
||||
# Add other filesystems if it supports more later.
|
||||
_supported_fs xfs btrfs
|
||||
# real QA test starts here
|
||||
_supported_fs generic
|
||||
_supported_os Linux
|
||||
_require_scratch_dedupe
|
||||
_require_command "$DUPEREMOVE_PROG" duperemove
|
||||
_require_scratch_duperemove
|
||||
|
||||
fssize=$((2 * 1024 * 1024 * 1024))
|
||||
_scratch_mkfs_sized $fssize > $seqres.full 2>&1
|
||||
@@ -1,3 +1,3 @@
|
||||
QA output created by 008
|
||||
QA output created by 559
|
||||
= before cycle mount =
|
||||
= after cycle mount =
|
||||
@@ -2,7 +2,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (c) 2018 Red Hat Inc. All Rights Reserved.
|
||||
#
|
||||
# FS QA Test 009
|
||||
# FS QA Test generic/560
|
||||
#
|
||||
# Iterate dedupe integrity test. Copy an original data0 several
|
||||
# times (d0 -> d1, d1 -> d2, ... dn-1 -> dn), dedupe dataN everytime
|
||||
@@ -32,13 +32,9 @@ _cleanup()
|
||||
rm -f $seqres.full
|
||||
|
||||
# real QA test starts here
|
||||
|
||||
# duperemove only supports btrfs and xfs (with reflink feature).
|
||||
# Add other filesystems if it supports more later.
|
||||
_supported_fs xfs btrfs
|
||||
_supported_fs generic
|
||||
_supported_os Linux
|
||||
_require_scratch_dedupe
|
||||
_require_command "$DUPEREMOVE_PROG" duperemove
|
||||
_require_scratch_duperemove
|
||||
|
||||
_scratch_mkfs > $seqres.full 2>&1
|
||||
_scratch_mount >> $seqres.full 2>&1
|
||||
@@ -1,4 +1,4 @@
|
||||
QA output created by 009
|
||||
QA output created by 560
|
||||
= Do dedup and verify =
|
||||
= Backwords verify =
|
||||
= Verify after cycle mount =
|
||||
@@ -2,7 +2,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (c) 2018 Red Hat Inc. All Rights Reserved.
|
||||
#
|
||||
# FS QA Test 010
|
||||
# FS QA Test generic/561
|
||||
#
|
||||
# Dedup & random I/O race test, do multi-threads fsstress and dedupe on
|
||||
# same directory/files
|
||||
@@ -32,13 +32,9 @@ _cleanup()
|
||||
rm -f $seqres.full
|
||||
|
||||
# real QA test starts here
|
||||
|
||||
# duperemove only supports btrfs and xfs (with reflink feature).
|
||||
# Add other filesystems if it supports more later.
|
||||
_supported_fs xfs btrfs
|
||||
_supported_fs generic
|
||||
_supported_os Linux
|
||||
_require_scratch_dedupe
|
||||
_require_command "$DUPEREMOVE_PROG" duperemove
|
||||
_require_scratch_duperemove
|
||||
_require_command "$KILLALL_PROG" killall
|
||||
|
||||
_scratch_mkfs > $seqres.full 2>&1
|
||||
@@ -0,0 +1,2 @@
|
||||
QA output created by 561
|
||||
Silence is golden
|
||||
@@ -561,3 +561,6 @@
|
||||
556 auto quick casefold
|
||||
557 auto quick log
|
||||
558 auto enospc
|
||||
559 auto stress dedupe
|
||||
560 auto stress dedupe
|
||||
561 auto stress dedupe
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
QA output created by 010
|
||||
Silence is golden
|
||||
@@ -4,9 +4,6 @@
|
||||
# - comment line before each group is "new" description
|
||||
#
|
||||
002 auto metadata quick log
|
||||
008 auto stress dedupe
|
||||
009 auto stress dedupe
|
||||
010 auto stress dedupe
|
||||
011 auto quick
|
||||
032 mkfs auto quick
|
||||
298 auto trim
|
||||
|
||||
Reference in New Issue
Block a user