Skip to content

Commit

Permalink
iotests: use -ccw on s390x for 040, 139, and 182
Browse files Browse the repository at this point in the history
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: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: QingFeng Hao <haoqf@linux.vnet.ibm.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
  • Loading branch information
cohuck authored and kevmw committed Sep 26, 2017
1 parent 78aa8aa commit f1d5516
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 5 deletions.
6 changes: 5 additions & 1 deletion tests/qemu-iotests/040
Expand Up @@ -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")
self.vm.add_device("virtio-scsi-pci")
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()

Expand Down
12 changes: 10 additions & 2 deletions tests/qemu-iotests/139
Expand Up @@ -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()
self.vm.add_device("virtio-scsi-pci,id=virtio-scsi")
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):
Expand Down Expand Up @@ -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', {})
Expand Down
13 changes: 11 additions & 2 deletions tests/qemu-iotests/182
Expand Up @@ -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'
Expand Down

0 comments on commit f1d5516

Please sign in to comment.