4 # Test out the v2 stripe logs with logprint
6 #-----------------------------------------------------------------------
7 # Copyright (c) 2000-2003 Silicon Graphics, Inc. All Rights Reserved.
9 # This program is free software; you can redistribute it and/or modify it
10 # under the terms of version 2 of the GNU General Public License as
11 # published by the Free Software Foundation.
13 # This program is distributed in the hope that it would be useful, but
14 # WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17 # Further, this software is distributed without any warranty that it is
18 # free of the rightful claim of any third person regarding infringement
19 # or the like. Any license provided herein, whether implied or
20 # otherwise, applies only to this software file. Patent licenses, if
21 # any, provided herein do not apply to combinations of this program with
22 # other software, or any other product whatsoever.
24 # You should have received a copy of the GNU General Public License along
25 # with this program; if not, write the Free Software Foundation, Inc., 59
26 # Temple Place - Suite 330, Boston MA 02111-1307, USA.
28 # Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
29 # Mountain View, CA 94043, or:
33 # For further information regarding this notice, see:
35 # http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
36 #-----------------------------------------------------------------------
39 owner=tes@melbourne.sgi.com
42 echo "QA output created by $seq"
46 status=1 # failure is the default!
48 # get standard environment, filters and checks
58 umount $SCRATCH_MNT 2>/dev/null
60 trap "_cleanup; exit \$status" 0 1 2 3 15
62 # real QA test starts here
64 _supported_os IRIX Linux
67 rm -f $seq.full $tmp.*
71 # link correct .out file
72 _link_out_file $seq.op
75 umount $SCRATCH_DEV >/dev/null 2>&1
77 cat >$tmp.seq.params <<EOF
78 # mkfs-opt mount-opt start-blk
79 version=2 logbsize=32k 2
80 version=2,su=4096 logbsize=32k 8
81 version=2,su=32768 logbsize=32k 64
83 # expect following line to fail
85 version=2,su=36864 logbsize=32k 72
87 # following is not a power of 2 BBs
89 version=2,su=5120 logbsize=32k 10
92 # Do the work for various log params which
93 # should not effect the data content of the log
94 # Try with and without sync'ing - sync'ing will mean that
95 # the log will be written out unfilled and thus the log
96 # stripe can have an effect.
98 for s in sync nosync ; do
100 | while read mkfs mnt start restofline
102 if [ "$mkfs" = "#" ]; then
105 if [ "$HOSTOS" = "IRIX" ]; then
106 # don't have umount rec at start on IRIX
107 # so we won't have to skip over it and get to
108 # another stripe boundary
111 echo "--- mkfs=$mkfs, mnt=$mnt, sync=$s ---"
112 export MKFS_OPTIONS="-l $mkfs"
113 export MOUNT_OPTIONS="-o $mnt"
117 if [ $s = "sync" ]; then
122 if [ $? -ne 0 ]; then
129 if [ $s = "sync" ]; then
130 # if sync then we have chance of DATA FORK EXTENTS items
131 # not hanging around very long due to inode syncing to disk
132 # (see comment in xfs_iflush_int())
133 # and this is to hard to reconcile in the op output
137 _cmp_op_output $seq.op $filtered
140 _print_transaction_inode $start
141 _cmp_output $seq.trans_inode $filtered
143 _print_transaction_buf $start
144 _cmp_output $seq.trans_buf $filtered