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 #-----------------------------------------------------------------------
26 echo "QA output created by $seq"
30 status=1 # failure is the default!
31 trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
33 # get standard environment, filters and checks
37 # real QA test starts here
51 if ! _scratch_mkfs_xfs >$tmp.out 2>&1
54 echo "failed to mkfs $SCRATCH_DEV"
61 echo "failed to mount $SCRATCH_DEV"
66 realtime_direct_aligned()
68 echo direct realtime writes, 4 files, 2m each, increasing offsets.
71 $XFS_IO_PROG -fdxR $SCRATCH_MNT/rt-direct-$1-$i \
72 -c "extsize $1" -c "pwrite ${i}m 1m" \
78 realtime_buffer_aligned()
80 echo buffered realtime writes, 4 files, 2m each, increasing offsets.
83 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-buffera-$1-$i \
84 -c "extsize $1" -c "pwrite ${i}m 1m" \
90 realtime_buffer_unaligned()
92 echo buffered realtime writes, 4 files, unaligned byte offsets/sizes.
95 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-bufferu-$1-$i \
96 -c "extsize $1" -c "pwrite $i 1" \
102 realtime_mmap_unaligned()
104 # mmap realtime writes, 4 files, unaligned byte offsets/sizes.
107 $XFS_IO_PROG -fxR $SCRATCH_MNT/rt-mmap-$1-$i \
108 -c "extsize $1" -c "pwrite $i 1" \
117 realtime_direct_aligned 0
118 #realtime_direct_aligned 1m
119 realtime_buffer_aligned 0
120 #realtime_buffer_aligned 1m
121 realtime_buffer_unaligned 0
122 #realtime_buffer_unaligned 1m
123 #realtime_mmap_unaligned 0
124 #realtime_mmap_unaligned 1m