qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

iotests: Avoid cp/mv of test images

This will not work with external data files, so try to get tests working
without it as far as possible.

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-id: 20191107163708.833192-17-mreitz@redhat.com
Signed-off-by: Max Reitz <mreitz@redhat.com>

+13 -19
+4 -8
tests/qemu-iotests/063
··· 51 51 _make_test_img 4M 52 52 53 53 echo "== Testing conversion with -n fails with no target file ==" 54 - # check .orig file does not exist 55 - rm -f "$TEST_IMG.orig" 56 54 if $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -n "$TEST_IMG" "$TEST_IMG.orig" >/dev/null 2>&1; then 57 55 exit 1 58 56 fi 59 57 60 58 echo "== Testing conversion with -n succeeds with a target file ==" 61 - rm -f "$TEST_IMG.orig" 62 - cp "$TEST_IMG" "$TEST_IMG.orig" 59 + _rm_test_img "$TEST_IMG.orig" 60 + TEST_IMG="$TEST_IMG.orig" _make_test_img 4M 63 61 if ! $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -n "$TEST_IMG" "$TEST_IMG.orig" ; then 64 62 exit 1 65 63 fi ··· 85 83 _check_test_img 86 84 87 85 echo "== Testing conversion to a smaller file fails ==" 88 - rm -f "$TEST_IMG.orig" 89 - mv "$TEST_IMG" "$TEST_IMG.orig" 90 - _make_test_img 2M 91 - if $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -n "$TEST_IMG.orig" "$TEST_IMG" >/dev/null 2>&1; then 86 + TEST_IMG="$TEST_IMG.target" _make_test_img 2M 87 + if $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -n "$TEST_IMG" "$TEST_IMG.target" >/dev/null 2>&1; then 92 88 exit 1 93 89 fi 94 90
+2 -1
tests/qemu-iotests/063.out
··· 2 2 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=4194304 3 3 == Testing conversion with -n fails with no target file == 4 4 == Testing conversion with -n succeeds with a target file == 5 + Formatting 'TEST_DIR/t.IMGFMT.orig', fmt=IMGFMT size=4194304 5 6 == Testing conversion to raw is the same after conversion with -n == 6 7 == Testing conversion back to original format == 7 8 No errors were found on the image. 8 9 == Testing conversion to a smaller file fails == 9 - Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=2097152 10 + Formatting 'TEST_DIR/t.IMGFMT.target', fmt=IMGFMT size=2097152 10 11 == Regression testing for copy offloading bug == 11 12 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1048576 12 13 Formatting 'TEST_DIR/t.IMGFMT.target', fmt=IMGFMT size=1048576
+3 -6
tests/qemu-iotests/085
··· 105 105 { 106 106 base_image="${TEST_DIR}/$((${1}-1))-${snapshot_virt0}" 107 107 snapshot_file="${TEST_DIR}/${1}-${snapshot_virt0}" 108 - _make_test_img -u -b "${base_image}" "$size" 109 - mv "${TEST_IMG}" "${snapshot_file}" 108 + TEST_IMG=$snapshot_file _make_test_img -u -b "${base_image}" "$size" 110 109 do_blockdev_add "$1" "'backing': null, " "${snapshot_file}" 111 110 } 112 111 ··· 122 121 123 122 size=128M 124 123 125 - _make_test_img $size 126 - mv "${TEST_IMG}" "${TEST_IMG}.1" 127 - _make_test_img $size 128 - mv "${TEST_IMG}" "${TEST_IMG}.2" 124 + TEST_IMG="$TEST_IMG.1" _make_test_img $size 125 + TEST_IMG="$TEST_IMG.2" _make_test_img $size 129 126 130 127 echo 131 128 echo === Running QEMU ===
+4 -4
tests/qemu-iotests/085.out
··· 1 1 QA output created by 085 2 - Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 3 - Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 2 + Formatting 'TEST_DIR/t.IMGFMT.1', fmt=IMGFMT size=134217728 3 + Formatting 'TEST_DIR/t.IMGFMT.2', fmt=IMGFMT size=134217728 4 4 5 5 === Running QEMU === 6 6 ··· 68 68 69 69 === Create a couple of snapshots using blockdev-snapshot === 70 70 71 - Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/10-snapshot-v0.IMGFMT 71 + Formatting 'TEST_DIR/11-snapshot-v0.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/10-snapshot-v0.IMGFMT 72 72 { 'execute': 'blockdev-add', 'arguments': { 'driver': 'IMGFMT', 'node-name': 'snap_11', 'backing': null, 'file': { 'driver': 'file', 'filename': 'TEST_DIR/11-snapshot-v0.IMGFMT', 'node-name': 'file_11' } } } 73 73 {"return": {}} 74 74 { 'execute': 'blockdev-snapshot', 'arguments': { 'node': 'virtio0', 'overlay':'snap_11' } } 75 75 {"return": {}} 76 - Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/11-snapshot-v0.IMGFMT 76 + Formatting 'TEST_DIR/12-snapshot-v0.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/11-snapshot-v0.IMGFMT 77 77 { 'execute': 'blockdev-add', 'arguments': { 'driver': 'IMGFMT', 'node-name': 'snap_12', 'backing': null, 'file': { 'driver': 'file', 'filename': 'TEST_DIR/12-snapshot-v0.IMGFMT', 'node-name': 'file_12' } } } 78 78 {"return": {}} 79 79 { 'execute': 'blockdev-snapshot', 'arguments': { 'node': 'virtio0', 'overlay':'snap_12' } }