qemu/tests/qemu-iotests/035
<<
>>
Prefs
   1#!/usr/bin/env bash
   2# group: rw auto quick
   3#
   4# Let a few AIO requests run in parallel and have them access different L2
   5# tables so that the cache has a chance to get used up.
   6#
   7# Copyright (C) 2012 Red Hat, Inc.
   8#
   9# This program is free software; you can redistribute it and/or modify
  10# it under the terms of the GNU General Public License as published by
  11# the Free Software Foundation; either version 2 of the License, or
  12# (at your option) any later version.
  13#
  14# This program is distributed in the hope that it will be useful,
  15# but WITHOUT ANY WARRANTY; without even the implied warranty of
  16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17# GNU General Public License for more details.
  18#
  19# You should have received a copy of the GNU General Public License
  20# along with this program.  If not, see <http://www.gnu.org/licenses/>.
  21#
  22
  23# creator
  24owner=kwolf@redhat.com
  25
  26seq=`basename $0`
  27echo "QA output created by $seq"
  28
  29status=1        # failure is the default!
  30
  31_cleanup()
  32{
  33        _cleanup_test_img
  34}
  35trap "_cleanup; exit \$status" 0 1 2 3 15
  36
  37# get standard environment, filters and checks
  38. ./common.rc
  39. ./common.filter
  40
  41_supported_fmt qcow2
  42_supported_proto generic
  43
  44
  45size=6G
  46CLUSTER_SIZE=512
  47
  48echo
  49echo "creating image"
  50_make_test_img $size
  51
  52generate_requests() {
  53    for ((i=0;i<=63;i++)); do
  54        echo "aio_write ${i}M 512"
  55        echo "aio_write ${i}M 512"
  56        echo "aio_write ${i}M 512"
  57    done
  58}
  59
  60generate_requests | $QEMU_IO "$TEST_IMG" | _filter_qemu_io |\
  61        sed -e 's/bytes at offset [0-9]*/bytes at offset XXX/g'
  62
  63echo
  64echo "checking image for errors"
  65_check_test_img
  66
  67# success, all done
  68echo "*** done"
  69rm -f $seq.full
  70status=0
  71