Statistics
| Branch: | Revision:

root / tests / qemu-iotests / 002 @ 6bf19c94

History | View | Annotate | Download (1.7 kB)

1
#!/bin/sh
2
#
3
# Test simple read/write using plain bdrv_pread/bdrv_pwrite
4
#
5
# Copyright (C) 2009 Red Hat, Inc.
6
#
7
# This program is free software; you can redistribute it and/or modify
8
# it under the terms of the GNU General Public License as published by
9
# the Free Software Foundation; either version 2 of the License, or
10
# (at your option) any later version.
11
#
12
# This program is distributed in the hope that it will be useful,
13
# but WITHOUT ANY WARRANTY; without even the implied warranty of
14
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
# GNU General Public License for more details.
16
#
17
# You should have received a copy of the GNU General Public License
18
# along with this program; if not, write to the Free Software
19
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
20
# USA
21
#
22

    
23
# creator
24
owner=hch@lst.de
25

    
26
seq=`basename $0`
27
echo "QA output created by $seq"
28

    
29
here=`pwd`
30
tmp=/tmp/$$
31
status=1	# failure is the default!
32

    
33
_cleanup()
34
{
35
	_cleanup_test_img
36
}
37
trap "_cleanup; exit \$status" 0 1 2 3 15
38

    
39
# get standard environment, filters and checks
40
. ./common.rc
41
. ./common.filter
42

    
43
_supported_fmt generic
44
_supported_os Linux
45

    
46

    
47
size=128M
48
_make_test_img $size
49

    
50
echo
51
echo "== reading whole image =="
52
$QEMU_IO -c "read -p 0 $size" $TEST_IMG | _filter_qemu_io
53

    
54
echo
55
echo "== rewriting whole image =="
56
$QEMU_IO -c "write -pP 0xa 0 $size" $TEST_IMG | _filter_qemu_io
57

    
58
echo
59
echo "== verify pattern =="
60
$QEMU_IO -c "read -pP 0xa 0 $size" $TEST_IMG | _filter_qemu_io
61

    
62
echo
63
echo "unaligned pwrite"
64
$QEMU_IO -c 'write -pP 0axb 66 42' $TEST_IMG | _filter_qemu_io
65

    
66
echo
67
echo "verify pattern"
68
$QEMU_IO -c 'read -pP 0xab 66 42' $TEST_IMG | _filter_qemu_io
69

    
70
# success, all done
71
echo "*** done"
72
rm -f $seq.full
73
status=0