35503b237f321a6530beb3db86c5ffb343fe2f02
[xfstests-dev.git] / tests / xfs / 171
1 #! /bin/bash
2 # SPDX-License-Identifier: GPL-2.0
3 # Copyright (c) 2007 Silicon Graphics, Inc.  All Rights Reserved.
4 #
5 # FSQA Test No. 171
6 #
7 # Check the filestreams allocator is doing its job.
8 # Multi-file data streams should always write into seperate AGs.
9 #
10 seq=`basename $0`
11 seqres=$RESULT_DIR/$seq
12 echo "QA output created by $seq"
13
14 here=`pwd`
15 tmp=/tmp/$$
16 rm -f $seqres.full
17 status=1    # failure is the default!
18 trap "_cleanup; exit \$status" 0 1 2 3 15
19
20 _cleanup()
21 {
22         cd /
23         rm -f $tmp.*
24 }
25
26 # get standard environment, filters and checks
27 . ./common/rc
28 . ./common/filter
29 . ./common/filestreams
30
31 # real QA test starts here
32 _supported_fs xfs
33
34 _require_scratch
35 _require_no_rtinherit
36
37 _check_filestreams_support || _notrun "filestreams not available"
38
39 # test large numbers of files, single I/O per file, 120s timeout
40 # Get close to filesystem full.
41 # 128 = ENOSPC
42 # 120 = 93.75% full, gets repeatable failures
43 # 112 = 87.5% full, should reliably succeed but doesn't *FIXME*
44 # 100 = 78.1% full, should reliably succeed
45 _set_stream_timeout_centisecs 12000
46
47 _test_streams 64 16 8 100 1 1 0
48 _test_streams 64 16 8 100 1 1 1
49 _test_streams 64 16 8 100 1 0 0
50 _test_streams 64 16 8 100 1 0 1
51
52 status=0
53 exit
54