generic/204: don't flood stdout with ENOSPC messages on an ENOSPC test

This test has been on and off my bad list for many years due to the fact
that it will spew potentially millions of "No space left on device"
errors if the file count calculations are wrong.  The calculations
should be correct for the XFS data device, but they don't apply to other
filesystems.

Therefore, filter out the ENOSPC messages when the files are not going
to be created on the xfs data device (e.g. ext4, xfs realtime, etc.)

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Zorro Lang <zlang@redhat.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Darrick J. Wong
2020-09-14 18:44:18 -07:00
committed by Eryu Guan
parent aa255e36c7
commit a8f5f152e4
+6 -2
View File
@@ -76,9 +76,13 @@ files=$((space / (direntlen + isize + dbsize)))
echo files $files, resvblks $resv_blks >> $seqres.full
_scratch_resvblks $resv_blks >> $seqres.full 2>&1
filter() {
test $FSTYP != xfs && sed -e '/No space left on device/d'
}
for i in `seq -w 1 $files`; do
echo -n > $SCRATCH_MNT/$i
echo XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX > $SCRATCH_MNT/$i
(echo -n > $SCRATCH_MNT/$i;
echo XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX > $SCRATCH_MNT/$i) 2>&1 | filter
done
# success, all done