diff mbox series

fstests: Do not execute xfs/{532,533,538} when realtime feature is enabled

Message ID 20210405074447.22222-1-chandanrlinux@gmail.com (mailing list archive)
State Deferred, archived
Headers show
Series fstests: Do not execute xfs/{532,533,538} when realtime feature is enabled | expand

Commit Message

Chandan Babu R April 5, 2021, 7:44 a.m. UTC
The minimum length space allocator (i.e. xfs_bmap_exact_minlen_extent_alloc())
depends on the underlying filesystem to be fragmented so that there are enough
one block sized extents available to satify space allocation requests.

xfs/{532,533,538} tests issue space allocation requests for metadata (e.g. for
blocks holding directory and xattr information). With realtime filesystem
instances, these tests would end up fragmenting the space on realtime
device. Hence minimum length space allocator fails since the regular
filesystem space is not fragmented and hence there are no one block sized
extents available.

Thus, this commit disables execution of xfs/{532,533,538} when realtime
feature is enabled on the filesystem instance.

Reported-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Chandan Babu R <chandanrlinux@gmail.com>
---
 tests/xfs/532 | 1 +
 tests/xfs/533 | 1 +
 tests/xfs/538 | 1 +
 3 files changed, 3 insertions(+)

Comments

Darrick J. Wong April 7, 2021, 4:12 p.m. UTC | #1
On Mon, Apr 05, 2021 at 01:14:47PM +0530, Chandan Babu R wrote:
> The minimum length space allocator (i.e. xfs_bmap_exact_minlen_extent_alloc())
> depends on the underlying filesystem to be fragmented so that there are enough
> one block sized extents available to satify space allocation requests.
> 
> xfs/{532,533,538} tests issue space allocation requests for metadata (e.g. for
> blocks holding directory and xattr information). With realtime filesystem
> instances, these tests would end up fragmenting the space on realtime
> device. Hence minimum length space allocator fails since the regular
> filesystem space is not fragmented and hence there are no one block sized
> extents available.
> 
> Thus, this commit disables execution of xfs/{532,533,538} when realtime
> feature is enabled on the filesystem instance.
> 
> Reported-by: Darrick J. Wong <djwong@kernel.org>
> Signed-off-by: Chandan Babu R <chandanrlinux@gmail.com>
> ---
>  tests/xfs/532 | 1 +
>  tests/xfs/533 | 1 +
>  tests/xfs/538 | 1 +
>  3 files changed, 3 insertions(+)
> 
> diff --git a/tests/xfs/532 b/tests/xfs/532
> index 2bed574a..5359add5 100755
> --- a/tests/xfs/532
> +++ b/tests/xfs/532
> @@ -37,6 +37,7 @@ _supported_fs xfs
>  _require_scratch
>  _require_attrs
>  _require_xfs_debug
> +_require_no_realtime

Alternately, you could do:

	$XFS_IO_PROG -c 'chattr -t' $SCRATCH_MNT

and not reduce test coverage.

--D

>  _require_test_program "punch-alternating"
>  _require_xfs_io_error_injection "reduce_max_iextents"
>  _require_xfs_io_error_injection "bmap_alloc_minlen_extent"
> diff --git a/tests/xfs/533 b/tests/xfs/533
> index be909fcc..4826cccc 100755
> --- a/tests/xfs/533
> +++ b/tests/xfs/533
> @@ -35,6 +35,7 @@ rm -f $seqres.full
>  _supported_fs xfs
>  _require_scratch
>  _require_xfs_debug
> +_require_no_realtime
>  _require_test_program "punch-alternating"
>  _require_xfs_io_error_injection "reduce_max_iextents"
>  _require_xfs_io_error_injection "bmap_alloc_minlen_extent"
> diff --git a/tests/xfs/538 b/tests/xfs/538
> index 90eb1637..53a2c060 100755
> --- a/tests/xfs/538
> +++ b/tests/xfs/538
> @@ -35,6 +35,7 @@ rm -f $seqres.full
>  _supported_fs xfs
>  _require_scratch
>  _require_xfs_debug
> +_require_no_realtime
>  _require_test_program "punch-alternating"
>  _require_xfs_io_error_injection "bmap_alloc_minlen_extent"
>  
> -- 
> 2.29.2
>
diff mbox series

Patch

diff --git a/tests/xfs/532 b/tests/xfs/532
index 2bed574a..5359add5 100755
--- a/tests/xfs/532
+++ b/tests/xfs/532
@@ -37,6 +37,7 @@  _supported_fs xfs
 _require_scratch
 _require_attrs
 _require_xfs_debug
+_require_no_realtime
 _require_test_program "punch-alternating"
 _require_xfs_io_error_injection "reduce_max_iextents"
 _require_xfs_io_error_injection "bmap_alloc_minlen_extent"
diff --git a/tests/xfs/533 b/tests/xfs/533
index be909fcc..4826cccc 100755
--- a/tests/xfs/533
+++ b/tests/xfs/533
@@ -35,6 +35,7 @@  rm -f $seqres.full
 _supported_fs xfs
 _require_scratch
 _require_xfs_debug
+_require_no_realtime
 _require_test_program "punch-alternating"
 _require_xfs_io_error_injection "reduce_max_iextents"
 _require_xfs_io_error_injection "bmap_alloc_minlen_extent"
diff --git a/tests/xfs/538 b/tests/xfs/538
index 90eb1637..53a2c060 100755
--- a/tests/xfs/538
+++ b/tests/xfs/538
@@ -35,6 +35,7 @@  rm -f $seqres.full
 _supported_fs xfs
 _require_scratch
 _require_xfs_debug
+_require_no_realtime
 _require_test_program "punch-alternating"
 _require_xfs_io_error_injection "bmap_alloc_minlen_extent"