Setting acls on an xfs filesystem will succeed even after running out of space for user attributes. Use trusted attributes instead. Signed-off-by: Ernesto A. Fernández <ernesto.mnd.fernandez@xxxxxxxxx> --- tests/generic/449 | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/generic/449 b/tests/generic/449 index fb776b3..6fbc634 100755 --- a/tests/generic/449 +++ b/tests/generic/449 @@ -59,6 +59,15 @@ _require_attrs _scratch_mkfs_sized $((50 * 1024 * 1024)) >> $seqres.full 2>&1 _scratch_mount || _fail "mount failed" +if [ "$FSTYP" == "xfs" ]; then + # xfs takes too long to run out of space if setting only the names + # of the attributes. Create a 5k file filled with dots to be used + # as their value. + VFILE=$SCRATCH_MNT/valuefile + touch $VFILE + $XFS_IO_PROG -c "pwrite -S 0x2E 0 5k" $VFILE >>$seqres.full 2>&1 +fi + TFILE=$SCRATCH_MNT/testfile.$seq # Create the test file and choose its permissions @@ -70,6 +79,13 @@ chmod go-rwx $TFILE $XFS_IO_PROG -c "pwrite 0 50m" $TFILE >>$seqres.full 2>&1 i=1 j=1 +ATTR_TYPE=user +if [ "$FSTYP" == "xfs" ]; then + ATTR_TYPE=trusted + while $SETFATTR_PROG -n $ATTR_TYPE.$i -v $(cat $VFILE) $TFILE &>/dev/null; do + ((++i)) + done +fi ret=0 while [ $ret -eq 0 ]; do ret=1 @@ -77,7 +93,7 @@ while [ $ret -eq 0 ]; do # On btrfs, setfattr will sometimes fail when free space is # low, long before it's actually exhausted. Insist until it # fails consistently. - $SETFATTR_PROG -n user.$i"x"$j $TFILE &>/dev/null + $SETFATTR_PROG -n $ATTR_TYPE.$i"x"$j $TFILE &>/dev/null ret=$(( $ret && $? )) ((++j)) done -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html