#! /bin/bash # SPDX-License-Identifier: GPL-2.0 # Copyright (c) 2007 Silicon Graphics, Inc. All Rights Reserved. # # FSQA Test No. 171 # # Check the filestreams allocator is doing its job. # Multi-file data streams should always write into seperate AGs. # seq=`basename $0` seqres=$RESULT_DIR/$seq echo "QA output created by $seq" here=`pwd` tmp=/tmp/$$ rm -f $seqres.full status=1 # failure is the default! trap "_cleanup; exit \$status" 0 1 2 3 15 _cleanup() { cd / rm -f $tmp.* } # get standard environment, filters and checks . ./common/rc . ./common/filter . ./common/filestreams # real QA test starts here _supported_fs xfs _supported_os Linux _require_scratch _check_filestreams_support || _notrun "filestreams not available" # test large numbers of files, single I/O per file, 120s timeout # Get close to filesystem full. # 128 = ENOSPC # 120 = 93.75% full, gets repeatable failures # 112 = 87.5% full, should reliably succeed but doesn't *FIXME* # 100 = 78.1% full, should reliably succeed _set_stream_timeout_centisecs 12000 _test_streams 64 16 8 100 1 1 0 _test_streams 64 16 8 100 1 1 1 _test_streams 64 16 8 100 1 0 0 _test_streams 64 16 8 100 1 0 1 status=0 exit