xfstests: add test 185, Dmapi Punch/Probe Alignment compared to xfsctl(FREESPACE),
[xfstests-dev.git] / 177
1 #! /bin/sh
2 # FS QA Test No. 177
3 #
4 # Test to reproduce PV#: 964316
5 # Check sync reclaims and flushes unlinked inodes to their buffers.
6 #-----------------------------------------------------------------------
7 # Copyright (c) 2007 Silicon Graphics, Inc.  All Rights Reserved.
8 #-----------------------------------------------------------------------
9 #
10 # creator
11 owner=mohamedb@sgi.com
12
13 seq=`basename $0`
14 echo "QA output created by $seq"
15
16 here=`pwd`
17 tmp=/tmp/$$
18 status=1        # failure is the default!
19 trap "_cleanup; exit \$status" 0 1 2 3 15
20
21 _cleanup()
22 {
23     cd /
24     rm -f $tmp.*
25 }
26
27 # get standard environment, filters and checks
28 . ./common.rc
29 . ./common.filter
30
31 # real QA test starts here
32
33 # Modify as appropriate.
34 _supported_fs xfs 
35 _supported_os Linux
36
37 # Setup Filesystem
38 _require_scratch
39 _scratch_mkfs_xfs >/dev/null 2>&1 \
40         || _fail "mkfs failed"
41
42 _scratch_mount \
43         || _fail "mount failed"
44
45 # run Mark Goodwin test here
46 # Usage: ./bulkstat_unlink_test iterations nfiles stride dir
47 #        Create dir with nfiles, unlink each stride'th file, sync, bulkstat
48 echo "Start original bulkstat_unlink_test"
49 $here/src/bulkstat_unlink_test 10 100 1 $SCRATCH_MNT/bulkstat
50 $here/src/bulkstat_unlink_test 10 1000 1 $SCRATCH_MNT/bulkstat
51 $here/src/bulkstat_unlink_test 15 100 6 $SCRATCH_MNT/bulkstat
52 $here/src/bulkstat_unlink_test 20 1000 3 $SCRATCH_MNT/bulkstat
53
54 # Mount scratch with ikeep enabled
55 umount $SCRATCH_MNT
56 _scratch_mount "-o dmapi,mtpt=$SCRATCH_MNT" \
57         || _fail "mount failed"
58
59 echo "Start bulkstat_unlink_test_modified"
60 $here/src/bulkstat_unlink_test_modified 10 1000 1 $SCRATCH_MNT/bulkstat
61
62
63 # success, all done
64 status=0
65 exit