From: Darrick J. Wong <djwong@xxxxxxxxxx> The filestreams allocator can only be selected for files that reside on the data volume. In commit ee3e0010, we sprinkled calls to _require_no_rtinherit in the filestreams tests so that there wouldn't be regressions reported if the filesystem is formatted with -d rtinherit=1. This unnecessarily limits test coverage because userspace can control the device selection parameters quite easily with xfs_io chattr. Make the filestreams tests unset SCRATCH_RTDEV so that the allocator isn't thrown off by the rtbitmap consuming space on the data device. Fixes: ee3e0010 ("xfs/realtime: add _require_no_rtinherit function") Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> --- common/filestreams | 5 +++++ tests/xfs/170 | 1 - tests/xfs/171 | 1 - tests/xfs/172 | 1 - tests/xfs/173 | 1 - tests/xfs/174 | 1 - tests/xfs/445 | 5 +++++ 7 files changed, 10 insertions(+), 5 deletions(-) diff --git a/common/filestreams b/common/filestreams index 267dcb3c..8165effe 100644 --- a/common/filestreams +++ b/common/filestreams @@ -90,6 +90,11 @@ _test_streams() { local use_directio="$7" local expected_result="$8" # "fail" if failure is expected + # Disable the scratch rt device to avoid test failures relating to the + # rt bitmap consuming free space in our small data device and throwing + # off the filestreams allocator. + unset SCRATCH_RTDEV + local size=`expr $agsize \* 1024 \* 1024 \* $agcount` _scratch_mkfs_xfs -dsize=$size,agcount=$agcount >/dev/null 2>&1 \ || _fail "mkfs failed" diff --git a/tests/xfs/170 b/tests/xfs/170 index f7f0dd27..84023e4d 100755 --- a/tests/xfs/170 +++ b/tests/xfs/170 @@ -33,7 +33,6 @@ _cleanup() _supported_fs xfs _require_scratch -_require_no_rtinherit _check_filestreams_support || _notrun "filestreams not available" diff --git a/tests/xfs/171 b/tests/xfs/171 index 35503b23..0239081a 100755 --- a/tests/xfs/171 +++ b/tests/xfs/171 @@ -32,7 +32,6 @@ _cleanup() _supported_fs xfs _require_scratch -_require_no_rtinherit _check_filestreams_support || _notrun "filestreams not available" diff --git a/tests/xfs/172 b/tests/xfs/172 index 36b4e650..56c34e69 100755 --- a/tests/xfs/172 +++ b/tests/xfs/172 @@ -32,7 +32,6 @@ _cleanup() _supported_fs xfs _require_scratch -_require_no_rtinherit _check_filestreams_support || _notrun "filestreams not available" diff --git a/tests/xfs/173 b/tests/xfs/173 index 8ed86d96..f37d2719 100755 --- a/tests/xfs/173 +++ b/tests/xfs/173 @@ -32,7 +32,6 @@ _cleanup() _supported_fs xfs _require_scratch -_require_no_rtinherit _check_filestreams_support || _notrun "filestreams not available" diff --git a/tests/xfs/174 b/tests/xfs/174 index 58038939..fc3de04f 100755 --- a/tests/xfs/174 +++ b/tests/xfs/174 @@ -32,7 +32,6 @@ _cleanup() _supported_fs xfs _require_scratch -_require_no_rtinherit _check_filestreams_support || _notrun "filestreams not available" diff --git a/tests/xfs/445 b/tests/xfs/445 index 7215fa59..d35010a9 100755 --- a/tests/xfs/445 +++ b/tests/xfs/445 @@ -57,6 +57,11 @@ _require_xfs_io_command "falloc" # check for filestreams _check_filestreams_support || _notrun "filestreams not available" +# Disable the scratch rt device to avoid test failures relating to the rt +# bitmap consuming free space in our small data device and throwing off the +# filestreams allocator. +unset SCRATCH_RTDEV + # use small AGs for frequent stream switching _scratch_mkfs_xfs -d agsize=20m,size=2g >> $seqres.full 2>&1 || _fail "mkfs failed"