Commit f1d5516a authored by Cornelia Huck's avatar Cornelia Huck Committed by Kevin Wolf
Browse files

iotests: use -ccw on s390x for 040, 139, and 182



The default cpu model on s390x does not provide zPCI, which is
not yet wired up on tcg. Moreover, virtio-ccw is the standard
on s390x, so use the -ccw instead of the -pci versions of virtio
devices on s390x.

Reviewed-by: default avatarKevin Wolf <kwolf@redhat.com>
Signed-off-by: default avatarCornelia Huck <cohuck@redhat.com>
Reviewed-by: default avatarQingFeng Hao <haoqf@linux.vnet.ibm.com>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent 78aa8aa0
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -82,7 +82,11 @@ class TestSingleDrive(ImageCommitTestCase):
        qemu_io('-f', 'raw', '-c', 'write -P 0xab 0 524288', backing_img)
        qemu_io('-f', iotests.imgfmt, '-c', 'write -P 0xef 524288 524288', mid_img)
        self.vm = iotests.VM().add_drive(test_img, "node-name=top,backing.node-name=mid,backing.backing.node-name=base", interface="none")
        if iotests.qemu_default_machine == 's390-ccw-virtio':
            self.vm.add_device("virtio-scsi-ccw")
        else:
            self.vm.add_device("virtio-scsi-pci")

        self.vm.add_device("scsi-hd,id=scsi0,drive=drive0")
        self.vm.launch()

+10 −2
Original line number Diff line number Diff line
@@ -25,13 +25,21 @@ import time

base_img = os.path.join(iotests.test_dir, 'base.img')
new_img = os.path.join(iotests.test_dir, 'new.img')
if iotests.qemu_default_machine == 's390-ccw-virtio':
    default_virtio_blk = 'virtio-blk-ccw'
else:
    default_virtio_blk = 'virtio-blk-pci'

class TestBlockdevDel(iotests.QMPTestCase):

    def setUp(self):
        iotests.qemu_img('create', '-f', iotests.imgfmt, base_img, '1M')
        self.vm = iotests.VM()
        if iotests.qemu_default_machine == 's390-ccw-virtio':
            self.vm.add_device("virtio-scsi-ccw,id=virtio-scsi")
        else:
            self.vm.add_device("virtio-scsi-pci,id=virtio-scsi")

        self.vm.launch()

    def tearDown(self):
@@ -87,7 +95,7 @@ class TestBlockdevDel(iotests.QMPTestCase):
        self.checkBlockDriverState(node, expect_error)

    # Add a device model
    def addDeviceModel(self, device, backend, driver = 'virtio-blk-pci'):
    def addDeviceModel(self, device, backend, driver = default_virtio_blk):
        result = self.vm.qmp('device_add', id = device,
                             driver = driver, drive = backend)
        self.assert_qmp(result, 'return', {})
+11 −2
Original line number Diff line number Diff line
@@ -45,17 +45,26 @@ _supported_os Linux

size=32M

case "$QEMU_DEFAULT_MACHINE" in
  s390-ccw-virtio)
      virtioblk=virtio-blk-ccw
      ;;
  *)
      virtioblk=virtio-blk-pci
      ;;
esac

_make_test_img $size

echo "Starting QEMU"
_launch_qemu -drive file=$TEST_IMG,if=none,id=drive0,file.locking=on \
    -device virtio-blk-pci,drive=drive0
    -device $virtioblk,drive=drive0

echo
echo "Starting a second QEMU using the same image should fail"
echo 'quit' | $QEMU -monitor stdio \
    -drive file=$TEST_IMG,if=none,id=drive0,file.locking=on \
    -device virtio-blk-pci,drive=drive0 2>&1 | _filter_testdir 2>&1 |
    -device $virtioblk,drive=drive0 2>&1 | _filter_testdir 2>&1 |
    _filter_qemu |
    sed -e '/falling back to POSIX file/d' \
        -e '/locks can be lost unexpectedly/d'