xfs/207: explicitly test for xflag character

With a recent change to xfs_io[1], the fsxattr.xflags output line
has added another flag column, so xfs/207 starts failing.

Rather than testing for an exact set of flags, test whether the
specific flag we are interested in is set or unset.

[1] xfs_io/lsattr: expose FS_XFLAG_HASATTR flag

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Bill O'Donnell <billodo@redhat.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Eric Sandeen
2019-11-07 09:07:26 -06:00
committed by Eryu Guan
parent fcfa7d242f
commit edeef98d4f
2 changed files with 13 additions and 4 deletions
+11 -2
View File
@@ -37,6 +37,15 @@ _require_cp_reflink
_require_xfs_io_command "fiemap"
_require_xfs_io_command "cowextsize"
# Takes the fsxattr.xflags line,
# i.e. fsxattr.xflags = 0x0 [--------------C-]
# and tests whether a flag character is set
test_xflag()
{
local flg=$1
grep -q "\[.*${flg}.*\]" && echo "$flg flag set" || echo "$flg flag unset"
}
rm -f $seqres.full
echo "Format and mount"
@@ -73,14 +82,14 @@ echo "Set cowextsize and check flag"
$XFS_IO_PROG -c "cowextsize 1048576" $testdir/file3 | _filter_scratch
_scratch_cycle_mount
$XFS_IO_PROG -c "stat" $testdir/file3 | grep 'fsxattr.xflags' | _filter_scratch
$XFS_IO_PROG -c "stat" $testdir/file3 | grep 'fsxattr.xflags' | test_xflag "C"
$XFS_IO_PROG -c "cowextsize" $testdir/file3 | _filter_scratch
echo "Unset cowextsize and check flag"
$XFS_IO_PROG -c "cowextsize 0" $testdir/file3 | _filter_scratch
_scratch_cycle_mount
$XFS_IO_PROG -c "stat" $testdir/file3 | grep 'fsxattr.xflags' | _filter_scratch
$XFS_IO_PROG -c "stat" $testdir/file3 | grep 'fsxattr.xflags' | test_xflag "C"
$XFS_IO_PROG -c "cowextsize" $testdir/file3 | _filter_scratch
status=0
+2 -2
View File
@@ -11,8 +11,8 @@ Check extsz and cowextsz settings on 1Mbyte file
[0] SCRATCH_MNT/test-207/file2
[1048576] SCRATCH_MNT/test-207/file2
Set cowextsize and check flag
fsxattr.xflags = 0x10000 [---------------C]
C flag set
[1048576] SCRATCH_MNT/test-207/file3
Unset cowextsize and check flag
fsxattr.xflags = 0x0 [----------------]
C flag unset
[0] SCRATCH_MNT/test-207/file3