4 # Exercise IO on the realtime device (direct, buffered, mmapd)
6 #-----------------------------------------------------------------------
7 # Copyright (c) 2000-2004 Silicon Graphics, Inc. All Rights Reserved.
9 # This program is free software; you can redistribute it and/or
10 # modify it under the terms 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,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write the Free Software Foundation,
20 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 #-----------------------------------------------------------------------
28 echo "QA output created by $seq"
32 status=1 # failure is the default!
33 trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
35 # get standard environment, filters and checks
39 # real QA test starts here
53 if ! _scratch_mkfs_xfs >$tmp.out 2>&1
56 echo "failed to mkfs $SCRATCH_DEV"
63 echo "failed to mount $SCRATCH_DEV"
68 realtime_direct_aligned()
70 echo direct realtime writes, 4 files, 2m each, increasing offsets.
73 $XFS_IO_PROG -fdxR $SCRATCH_MNT/rt-direct-$1-$i \
74 -c "extsize $1" -c "pwrite ${i}m 1m" \
80 realtime_buffer_aligned()
82 echo buffered realtime writes, 4 files, 2m each, increasing offsets.
85 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-buffera-$1-$i \
86 -c "extsize $1" -c "pwrite ${i}m 1m" \
92 realtime_buffer_unaligned()
94 echo buffered realtime writes, 4 files, unaligned byte offsets/sizes.
97 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-bufferu-$1-$i \
98 -c "extsize $1" -c "pwrite $i 1" \
104 realtime_mmap_unaligned()
106 # mmap realtime writes, 4 files, unaligned byte offsets/sizes.
109 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-mmap-$1-$i \
110 -c "extsize $1" -c "pwrite $i 1" \
119 realtime_direct_aligned 0
120 #realtime_direct_aligned 1m
121 realtime_buffer_aligned 0
122 #realtime_buffer_aligned 1m
123 realtime_buffer_unaligned 0
124 #realtime_buffer_unaligned 1m
125 #realtime_mmap_unaligned 0
126 #realtime_mmap_unaligned 1m