xref: /qemu/tests/qemu-iotests/101 (revision 8d9eb33ca0bbb8bca0f1775623ed3cf5f39760cd)
1*8d9eb33cSStefan Hajnoczi#!/bin/bash
2*8d9eb33cSStefan Hajnoczi#
3*8d9eb33cSStefan Hajnoczi# Test short file I/O
4*8d9eb33cSStefan Hajnoczi#
5*8d9eb33cSStefan Hajnoczi# Copyright (C) 2014 Red Hat, Inc.
6*8d9eb33cSStefan Hajnoczi#
7*8d9eb33cSStefan Hajnoczi# This program is free software; you can redistribute it and/or modify
8*8d9eb33cSStefan Hajnoczi# it under the terms of the GNU General Public License as published by
9*8d9eb33cSStefan Hajnoczi# the Free Software Foundation; either version 2 of the License, or
10*8d9eb33cSStefan Hajnoczi# (at your option) any later version.
11*8d9eb33cSStefan Hajnoczi#
12*8d9eb33cSStefan Hajnoczi# This program is distributed in the hope that it will be useful,
13*8d9eb33cSStefan Hajnoczi# but WITHOUT ANY WARRANTY; without even the implied warranty of
14*8d9eb33cSStefan Hajnoczi# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15*8d9eb33cSStefan Hajnoczi# GNU General Public License for more details.
16*8d9eb33cSStefan Hajnoczi#
17*8d9eb33cSStefan Hajnoczi# You should have received a copy of the GNU General Public License
18*8d9eb33cSStefan Hajnoczi# along with this program.  If not, see <http://www.gnu.org/licenses/>.
19*8d9eb33cSStefan Hajnoczi#
20*8d9eb33cSStefan Hajnoczi
21*8d9eb33cSStefan Hajnoczi# creator
22*8d9eb33cSStefan Hajnocziowner=stefanha@redhat.com
23*8d9eb33cSStefan Hajnoczi
24*8d9eb33cSStefan Hajnocziseq=`basename $0`
25*8d9eb33cSStefan Hajnocziecho "QA output created by $seq"
26*8d9eb33cSStefan Hajnoczi
27*8d9eb33cSStefan Hajnoczihere=`pwd`
28*8d9eb33cSStefan Hajnoczitmp=/tmp/$$
29*8d9eb33cSStefan Hajnoczistatus=1	# failure is the default!
30*8d9eb33cSStefan Hajnoczi
31*8d9eb33cSStefan Hajnoczi_cleanup()
32*8d9eb33cSStefan Hajnoczi{
33*8d9eb33cSStefan Hajnoczi	_cleanup_test_img
34*8d9eb33cSStefan Hajnoczi}
35*8d9eb33cSStefan Hajnoczitrap "_cleanup; exit \$status" 0 1 2 3 15
36*8d9eb33cSStefan Hajnoczi
37*8d9eb33cSStefan Hajnoczi# get standard environment, filters and checks
38*8d9eb33cSStefan Hajnoczi. ./common.rc
39*8d9eb33cSStefan Hajnoczi. ./common.filter
40*8d9eb33cSStefan Hajnoczi
41*8d9eb33cSStefan Hajnoczi_supported_fmt raw
42*8d9eb33cSStefan Hajnoczi_supported_proto file
43*8d9eb33cSStefan Hajnoczi_supported_os Linux
44*8d9eb33cSStefan Hajnoczi
45*8d9eb33cSStefan Hajnoczi
46*8d9eb33cSStefan Hajnocziecho
47*8d9eb33cSStefan Hajnocziecho "== creating short image file =="
48*8d9eb33cSStefan Hajnoczidd if=/dev/zero of="$TEST_IMG" bs=1 count=320
49*8d9eb33cSStefan Hajnoczi
50*8d9eb33cSStefan Hajnocziecho
51*8d9eb33cSStefan Hajnocziecho "== reading bytes beyond EOF gives zeroes =="
52*8d9eb33cSStefan Hajnoczi$QEMU_IO -c "read -P 0 0 512" "$TEST_IMG" | _filter_qemu_io
53*8d9eb33cSStefan Hajnoczi
54*8d9eb33cSStefan Hajnoczi
55*8d9eb33cSStefan Hajnoczi# success, all done
56*8d9eb33cSStefan Hajnocziecho "*** done"
57*8d9eb33cSStefan Hajnoczirm -f $seq.full
58*8d9eb33cSStefan Hajnoczistatus=0
59