qemu-e2k/tests/qemu-iotests
Alberto Garcia 0cf0e5980b qcow2: Generalize validate_table_offset() into qcow2_validate_table()
This function checks that the offset and size of a table are valid.

While the offset checks are fine, the size check is too generic, since
it only verifies that the total size in bytes fits in a 64-bit
integer. In practice all tables used in qcow2 have much smaller size
limits, so the size needs to be checked again for each table using its
actual limit.

This patch generalizes this function by allowing the caller to specify
the maximum size for that table. In addition to that it allows passing
an Error variable.

The function is also renamed and made public since we're going to use
it in other parts of the code.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2018-03-09 15:17:47 +01:00
..
sample_images iotests: Fix CID for VMDK afl image 2018-02-13 12:27:17 +01:00
.gitignore iotests: record separate timings per format,protocol pair 2017-02-12 00:47:42 +01:00
001 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
001.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
002 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
002.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
003 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
003.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
004 block: enable testing of LUKS driver with block I/O tests 2016-05-12 15:33:24 +02:00
004.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
005 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
005.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
007 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
007.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
008 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
008.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
009 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
009.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
010 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
010.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
011 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
011.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
012 block: enable testing of LUKS driver with block I/O tests 2016-05-12 15:33:24 +02:00
012.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
013 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
013.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
014 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
014.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
015 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
015.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
017 qemu-iotests: exclude vxhs from image creation via protocol 2017-04-24 15:09:33 -04:00
017.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
018 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
018.out iotests: 018: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
019 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
019.out qemu-io: Switch 'alloc' command to byte-based length 2017-05-11 14:28:05 +02:00
020 iotests: Fix 020 for vmdk 2018-01-23 12:34:43 +01:00
020.out iotests: Fix 020 for vmdk 2018-01-23 12:34:43 +01:00
021 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
021.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
022 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
022.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
023 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
023.out qemu-io: Allow unaligned access by default 2016-05-12 15:33:24 +02:00
024 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
024.out iotests: 024: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
025 block: Drop unmaintained 'archipelago' driver 2017-03-13 12:49:33 +01:00
025.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
026 iotests: Fix typo in 026 2017-04-27 15:46:16 +02:00
026.out iotests: Fix typo in 026 2017-04-27 15:46:16 +02:00
026.out.nocache iotests: Fix typo in 026 2017-04-27 15:46:16 +02:00
027 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
027.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
028 qemu-iotests: _cleanup_qemu must be called on exit 2017-04-24 15:09:33 -04:00
028.out qemu-iotests: Filter HMP readline escape characters 2017-04-27 15:39:49 +02:00
029 qemu-iotests: exclude vxhs from image creation via protocol 2017-04-24 15:09:33 -04:00
029.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
030 iotests: Make 030 less flaky 2017-11-14 18:06:25 +01:00
030.out qemu-iotests: Test streaming with missing job ID 2017-05-26 16:48:21 +02:00
031 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
031.out qcow2: Write full header on image creation 2016-01-20 13:36:23 +01:00
032 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
032.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
033 iotest 033: add misaligned write-zeroes test via truncate 2018-03-02 18:39:07 +01:00
033.out iotest 033: add misaligned write-zeroes test via truncate 2018-03-02 18:39:07 +01:00
034 block: Switch bdrv_write_zeroes() to byte interface 2016-06-08 10:21:08 +02:00
034.out iotests: 034: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
035 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
035.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
036 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
036.out qapi: Drop QERR_UNKNOWN_BLOCK_FORMAT_FEATURE 2016-03-17 15:47:56 +01:00
037 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
037.out iotests: 037: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
038 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
038.out iotests: 038: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
039 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
039.out qemu-iotests: limit non-_PROG-suffixed variables to common.rc 2017-10-06 16:28:58 +02:00
040 iotests: Add missing 'blkdebug::' in 040 2017-11-14 18:06:25 +01:00
040.out block: Skip implicit nodes in query-block/blockstats 2017-07-24 15:06:04 +02:00
041 qemu-iotests/041: Fix leaked scratch images 2017-08-01 18:09:33 +02:00
041.out block: Skip implicit nodes in query-block/blockstats 2017-07-24 15:06:04 +02:00
042 iotests: skip 042 with qcow which dosn't support zero sized images 2017-07-11 17:44:55 +02:00
042.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
043 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
043.out block/qapi: always report full_backing_filename 2015-12-18 14:36:17 +01:00
044 qemu-iotests: qcow2: Test growing large refcount table 2012-11-14 18:19:21 +01:00
044.out block/qcow2: Add qcow2_refcount_area() 2017-07-11 17:45:02 +02:00
045 qemu-iotests: add tests for runtime fd passing via SCM rights 2013-09-12 10:12:47 +02:00
045.out qemu-iotests: add tests for runtime fd passing via SCM rights 2013-09-12 10:12:47 +02:00
046 iotests: 046: Prepare for image locking 2017-05-11 11:08:40 +02:00
046.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
047 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
047.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
048 iotests: skip 048 with qcow which doesn't support resize 2017-07-11 17:44:55 +02:00
048.out block: enable testing of LUKS driver with block I/O tests 2016-05-12 15:33:24 +02:00
049 qcow2: convert QCow2 to use QCryptoBlock for encryption 2017-07-11 17:44:56 +02:00
049.out qcow2: convert QCow2 to use QCryptoBlock for encryption 2017-07-11 17:44:56 +02:00
050 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
050.out iotests: 050: Use TEST_IMG override instead of "mv" 2016-01-07 21:30:17 +01:00
051 scsi: Remove automatic creation of SCSI controllers with -drive if=scsi 2018-03-06 14:00:59 +01:00
051.out iotests: Fix 051 for compat=0.10 2018-01-23 12:34:43 +01:00
051.pc.out iotests: Fix 051 for compat=0.10 2018-01-23 12:34:43 +01:00
052 block: enable testing of LUKS driver with block I/O tests 2016-05-12 15:33:24 +02:00
052.out block: enable testing of LUKS driver with block I/O tests 2016-05-12 15:33:24 +02:00
053 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
053.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
054 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
054.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
055 iotests: Make 055 less flaky 2017-11-14 18:06:25 +01:00
055.out qemu-iotests: test backup compression in 055 2016-09-05 19:06:48 +02:00
056 iotests: Add regresion test case for write notifier assertion failure 2015-12-03 11:08:07 +08:00
056.out iotests: Add regresion test case for write notifier assertion failure 2015-12-03 11:08:07 +08:00
057 block: Accept node-name for blockdev-snapshot-internal-sync 2016-09-05 19:06:47 +02:00
057.out qemu-iotests: add 057 internal snapshot for block device test case 2013-09-12 10:12:47 +02:00
058 nbd-client: Refuse read-only client with BDRV_O_RDWR 2017-11-09 10:10:17 -06:00
058.out qemu-iotests: add test for snapshot in qemu-img convert 2013-12-04 15:19:00 +01:00
059 iotests: Make 059 pass on machines with little RAM 2018-01-23 12:34:43 +01:00
059.out iotests: Fix CID for VMDK afl image 2018-02-13 12:27:17 +01:00
060 qcow2: Repair unaligned preallocated zero clusters 2018-01-23 12:34:42 +01:00
060.out qcow2: Repair unaligned preallocated zero clusters 2018-01-23 12:34:42 +01:00
061 iotests: Test downgrading an image using a small L2 slice size 2018-02-13 17:00:00 +01:00
061.out iotests: Test downgrading an image using a small L2 slice size 2018-02-13 17:00:00 +01:00
062 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
062.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
063 qemu-iotests/063: Fix leaked image 2017-08-01 18:09:33 +02:00
063.out add qemu-img convert -n option (skip target volume creation) 2013-09-06 15:25:07 +02:00
064 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
064.out iotests: Lower 064's memory usage 2015-01-23 12:41:32 -05:00
065 qcow2: Add refcount_bits to format-specific info 2015-03-10 14:02:20 +01:00
065.out qemu-iotests: Additional info from qemu-img info 2013-10-11 16:49:50 +02:00
066 iotests: Extend test 066 2017-05-11 12:08:24 +02:00
066.out iotests: Extend test 066 2017-05-11 12:08:24 +02:00
067 iotests: Fix 067 for compat=0.10 2018-01-23 12:34:43 +01:00
067.out iotests: Fix 067 for compat=0.10 2018-01-23 12:34:43 +01:00
068 snapshot/tests: Try loadvm twice 2017-09-06 15:19:01 +01:00
068.out snapshot/tests: Try loadvm twice 2017-09-06 15:19:01 +01:00
069 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
069.out qemu-io qemu-nbd: Use error_report() etc. instead of fprintf() 2016-01-13 15:16:18 +01:00
070 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
070.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
071 block: Remove "options" indirection from blockdev-add 2016-10-24 17:54:03 +02:00
071.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
072 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
072.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
073 qemu-iotests: exclude vxhs from image creation via protocol 2017-04-24 15:09:33 -04:00
073.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
074 qemu-iotests: Remove blkdebug.conf after tests 2017-08-01 18:09:33 +02:00
074.out qemu-img: Drop redundant error message in compare 2017-10-26 14:45:57 +02:00
075 iotests: fix 075 and 078 2017-11-27 11:25:41 +01:00
075.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
076 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
076.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
077 iotests: 077: Filter out 'resume' lines 2017-11-14 18:06:25 +01:00
077.out iotests: 077: Filter out 'resume' lines 2017-11-14 18:06:25 +01:00
078 iotests: fix 075 and 078 2017-11-27 11:25:41 +01:00
078.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
079 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
079.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
080 iotests: Disable some tests for compat=0.10 2018-01-23 12:34:43 +01:00
080.out qcow2: Generalize validate_table_offset() into qcow2_validate_table() 2018-03-09 15:17:47 +01:00
081 block: Remove "options" indirection from blockdev-add 2016-10-24 17:54:03 +02:00
081.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
082 qemu-img: Check for backing image if specified during create 2017-07-18 15:27:37 +02:00
082.out qemu-img: Check for backing image if specified during create 2017-07-18 15:27:37 +02:00
083 iotests: Make 083 less flaky 2017-11-14 18:06:25 +01:00
083.out nbd: Minimal structured read for client 2017-10-30 21:48:41 +01:00
084 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
084.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
085 block: Use JSON null instead of "" to disable backing file 2017-07-24 13:35:11 +02:00
085.out block: deprecate "encryption=on" in favor of "encrypt.format=aes" 2017-07-11 17:44:55 +02:00
086 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
086.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
087 iotests: Make 087 pass without AIO enabled 2017-11-17 18:21:31 +01:00
087.out qcow2: add iotests to cover LUKS encryption support 2017-07-11 17:44:56 +02:00
088 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
088.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
089 iotests: Make 089 compatible with compat=0.10 2018-01-23 12:34:43 +01:00
089.out iotests: Make 089 compatible with compat=0.10 2018-01-23 12:34:43 +01:00
090 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
090.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
091 iotests: 091: Quit QEMU before checking image 2017-05-11 11:08:40 +02:00
091.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
092 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
092.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
093 blockdev: Mark BD-{remove,insert}-medium stable 2018-01-23 12:34:42 +01:00
093.out qemu-iotests: Test I/O limits with removable media 2017-11-13 15:46:26 +00:00
094 qemu-iotests: _cleanup_qemu must be called on exit 2017-04-24 15:09:33 -04:00
094.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
095 iotests: 095: Clean up QEMU before showing image info 2016-06-16 15:20:37 +02:00
095.out iotests: 095: Filter _img_info output 2016-01-07 21:30:17 +01:00
096 block: Don't return throttling info in query-named-block-nodes 2016-05-19 16:45:31 +02:00
096.out throttle: test that snapshots move the throttling configuration 2015-10-16 15:34:29 +02:00
097 iotests: Improve image-clear tests on non-aligned image 2017-04-03 17:11:40 +02:00
097.out iotests: Improve image-clear tests on non-aligned image 2017-04-03 17:11:40 +02:00
098 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
098.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
099 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
099.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
101 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
101.out qemu-iotests: add test case 101 for short file I/O 2014-08-22 11:01:12 +02:00
102 qemu-iotests: Fix locking issue in 102 2018-01-23 12:34:42 +01:00
102.out qemu-iotests: Fix locking issue in 102 2018-01-23 12:34:42 +01:00
103 iotests: Test valid values of l2-cache-entry-size 2018-02-13 17:00:00 +01:00
103.out iotests: Test valid values of l2-cache-entry-size 2018-02-13 17:00:00 +01:00
104 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
104.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
105 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
105.out vmdk: Fix integer overflow in offset calculation 2014-10-03 10:30:33 +01:00
106 qemu-img: add --shrink flag for resize 2017-09-26 15:00:32 +02:00
106.out iotests: Add preallocated resize test for raw 2017-07-11 17:45:02 +02:00
107 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
107.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
108 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
108.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
109 qemu-iotests/109: Fix lock race condition 2017-08-08 14:36:59 +02:00
109.out qemu-iotests/109: Fix lock race condition 2017-08-08 14:36:59 +02:00
110 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
110.out block/qapi: allow best-effort query 2015-12-18 14:36:17 +01:00
111 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
111.out qemu-img: Check for backing image if specified during create 2017-07-18 15:27:37 +02:00
112 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
112.out iotests: Extend test 112 for qemu-img amend 2015-12-18 14:34:43 +01:00
113 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
113.out iotests: Add test for unsupported image creation 2014-12-10 10:31:20 +01:00
114 qemu-iotests: exclude vxhs from image creation via protocol 2017-04-24 15:09:33 -04:00
114.out qemu-io: Don't die on second open 2017-07-10 13:18:05 +02:00
115 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
115.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
116 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
116.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
117 qemu-iotests: _cleanup_qemu must be called on exit 2017-04-24 15:09:33 -04:00
117.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
118 blockdev: Mark BD-{remove,insert}-medium stable 2018-01-23 12:34:42 +01:00
118.out iotests: Add test for change-related QMP commands 2015-11-11 16:25:47 +01:00
119 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
119.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
120 iotests: fix remainining tests to work with LUKS 2017-07-11 17:44:59 +02:00
120.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
121 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
121.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
122 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
122.out iotests: Improve _filter_qemu_img_map 2017-05-11 14:28:07 +02:00
123 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
123.out iotests: Add test for qemu-img convert to NBD 2015-02-16 15:07:18 +00:00
124 iotests: Check dirty bitmap statistics in 124 2017-08-01 18:09:33 +02:00
124.out iotests: add transactional failure race test 2016-11-14 22:47:34 -05:00
125 iotests: Add cluster_size=64k to 125 2017-10-26 15:01:14 +02:00
125.out iotests: Add cluster_size=64k to 125 2017-10-26 15:01:14 +02:00
126 iotests: Add test for colon handling 2017-07-11 17:45:00 +02:00
126.out iotests: Add test for colon handling 2017-07-11 17:45:00 +02:00
127 iotests: Add test for dataplane mirroring 2017-10-26 15:01:13 +02:00
127.out iotests: Add test for dataplane mirroring 2017-10-26 15:01:13 +02:00
128 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
128.out iotests: add O_DIRECT alignment probing test 2015-03-10 14:02:24 +01:00
129 qemu-iotests: Test that "stop" doesn't drain block jobs 2015-04-28 15:36:09 +02:00
129.out qemu-iotests: Test that "stop" doesn't drain block jobs 2015-04-28 15:36:09 +02:00
130 iotests: Disable some tests for compat=0.10 2018-01-23 12:34:43 +01:00
130.out qemu-iotests: Filter HMP readline escape characters 2017-04-27 15:39:49 +02:00
131 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
131.out qemu-io: Return non-zero exit code on failure 2017-02-12 00:47:42 +01:00
132 qemu-iotests: Add test case for mirror with unmap 2015-07-02 10:06:23 +01:00
132.out qemu-iotests: Add test case for mirror with unmap 2015-07-02 10:06:23 +01:00
133 iotests: Add test for non-string option reopening 2017-11-17 18:21:30 +01:00
133.out iotests: Add test for non-string option reopening 2017-11-17 18:21:30 +01:00
134 iotests: enable tests 134 and 158 to work with qcow (v1) 2017-07-11 17:44:56 +02:00
134.out qcow2: convert QCow2 to use QCryptoBlock for encryption 2017-07-11 17:44:56 +02:00
135 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
135.out block: qemu-iotests - add check for multiplication overflow in vpc 2015-07-27 17:19:07 +02:00
136 iotests: Make 136 less flaky 2017-11-14 18:06:25 +01:00
136.out block: Remove bdrv_aio_multiwrite() 2016-05-19 16:45:31 +02:00
137 iotests: Add l2-cache-entry-size to iotest 137 2018-02-13 17:00:00 +01:00
137.out iotests: Add l2-cache-entry-size to iotest 137 2018-02-13 17:00:00 +01:00
138 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
138.out iotests: Add test for checking large image files 2015-09-14 16:51:37 +02:00
139 blockdev: Mark BD-{remove,insert}-medium stable 2018-01-23 12:34:42 +01:00
139.out qemu-iotests/139: Avoid blockdev-add with id 2016-09-23 13:45:36 +02:00
140 nbd-client: Refuse read-only client with BDRV_O_RDWR 2017-11-09 10:10:17 -06:00
140.out nbd: Fix iotests failure due to changed client error message 2017-07-17 13:57:42 -05:00
141 qemu-iotests/141: Fix image cleanup 2017-08-01 18:09:33 +02:00
141.out mirror: Use real permissions in mirror/active commit block job 2017-02-28 20:47:46 +01:00
142 tests: Avoid non-portable 'echo -ARG' 2017-07-11 17:45:00 +02:00
142.out qemu-iotests: Filter HMP readline escape characters 2017-04-27 15:39:49 +02:00
143 qemu-iotests: _cleanup_qemu must be called on exit 2017-04-24 15:09:33 -04:00
143.out nbd: Fix iotests failure due to changed client error message 2017-07-17 13:57:42 -05:00
144 block: qemu-iotests - add test for snapshot, commit, snapshot bug 2016-02-02 18:07:27 +01:00
144.out block: deprecate "encryption=on" in favor of "encrypt.format=aes" 2017-07-11 17:44:55 +02:00
145 iotests: fix remainining tests to work with LUKS 2017-07-11 17:44:59 +02:00
145.out qemu-iotests: Filter HMP readline escape characters 2017-04-27 15:39:49 +02:00
146 block/vpc: add tests for image creation force_size parameter 2016-03-14 16:46:42 +01:00
146.out qemu-io: Switch 'map' output to byte-based reporting 2017-05-11 14:28:06 +02:00
147 iotest 147: add cases to test new @name parameter of nbd-server-add 2018-01-26 09:37:21 -06:00
147.out iotest 147: add cases to test new @name parameter of nbd-server-add 2018-01-26 09:37:21 -06:00
148 qemu-iotests: 148: properly skip test if quorum support is missing 2016-04-12 18:07:39 +02:00
148.out iotests: Test QUORUM_REPORT_BAD in fifo mode 2016-03-17 16:43:30 +01:00
149 iotests: chown LUKS device before qemu-io launches 2017-07-11 17:45:00 +02:00
149.out iotests: chown LUKS device before qemu-io launches 2017-07-11 17:45:00 +02:00
150 qemu-iotests: tests: do not set unused tmp variable 2016-04-15 17:56:56 +02:00
150.out iotests: Make 150 use qemu-img map instead of du 2016-04-12 18:06:51 +02:00
152 iotests: Test case for drive-mirror with unaligned image size 2016-04-20 16:52:55 +02:00
152.out iotests: Test case for drive-mirror with unaligned image size 2016-04-20 16:52:55 +02:00
153 qemu-iotests/153: Fix leaked scratch images 2017-08-01 18:09:33 +02:00
153.out qemu-io: Don't die on second open 2017-07-10 13:18:05 +02:00
154 block: Exploit BDRV_BLOCK_EOF for larger zero blocks 2017-06-30 21:48:06 +08:00
154.out block: Exploit BDRV_BLOCK_EOF for larger zero blocks 2017-06-30 21:48:06 +08:00
155 iotests: Use virtio-blk in 155 2018-02-13 12:27:17 +01:00
155.out iotests: Add test for post-mirror backing chains 2016-06-16 15:20:37 +02:00
156 iotests: Fix test 156 2017-08-01 18:09:33 +02:00
156.out shutdown: Expose bool cause in SHUTDOWN and RESET events 2017-05-23 13:28:17 +02:00
157 iotests: fix remainining tests to work with LUKS 2017-07-11 17:44:59 +02:00
157.out iotests: fix remainining tests to work with LUKS 2017-07-11 17:44:59 +02:00
158 qemu-img: Check for backing image if specified during create 2017-07-18 15:27:37 +02:00
158.out qcow2: convert QCow2 to use QCryptoBlock for encryption 2017-07-11 17:44:56 +02:00
159 iotests: skip 159 & 170 with luks format 2017-07-11 17:44:59 +02:00
159.out qemu-img: add the 'dd' subcommand 2016-09-20 22:10:57 +02:00
160 qemu-img: add skip option to dd 2016-09-20 22:10:57 +02:00
160.out qemu-img: add skip option to dd 2016-09-20 22:10:57 +02:00
162 qemu-iotests/162: Fix leaked temporary files 2017-08-01 18:09:33 +02:00
162.out iotests: Do not rely on unavailable domains in 162 2016-10-24 17:54:03 +02:00
163 qemu-iotests: add shrinking image test 2017-09-26 15:00:32 +02:00
163.out qemu-iotests: add shrinking image test 2017-09-26 15:00:32 +02:00
165 block: maintain persistent disabled bitmaps 2018-02-13 16:59:58 +01:00
165.out iotests: test qcow2 persistent dirty bitmap 2017-07-11 17:44:59 +02:00
170 iotests: skip 159 & 170 with luks format 2017-07-11 17:44:59 +02:00
170.out qemu-img: add the 'dd' subcommand 2016-09-20 22:10:57 +02:00
171 tests: Avoid non-portable 'echo -ARG' 2017-07-11 17:45:00 +02:00
171.out qemu-iotests: test 'offset' and 'size' options in raw driver 2016-10-31 16:52:39 +01:00
172 qemu-iotests: Add missing -machine accel=qtest 2017-09-26 14:46:23 +02:00
172.out hw/block/fdc: Convert to realize 2017-09-18 19:43:38 -04:00
173 qemu-iotest: test to lookup protocol-based image with relative backing 2017-02-12 00:47:42 +01:00
173.out qemu-iotest: test to lookup protocol-based image with relative backing 2017-02-12 00:47:42 +01:00
174 iotests: fix remainining tests to work with LUKS 2017-07-11 17:44:59 +02:00
174.out qemu-io: Add failure regression tests 2017-02-12 00:47:42 +01:00
175 qemu-img: Add tests for raw image preallocation 2017-02-24 16:09:22 +01:00
175.out qemu-img: Add tests for raw image preallocation 2017-02-24 16:09:22 +01:00
176 block: maintain persistent disabled bitmaps 2018-02-13 16:59:58 +01:00
176.out iotests: Fix 176 on 32-bit host 2017-11-21 14:54:02 +01:00
177 iotests: Split 177 into two parts for compat=0.10 2018-01-23 12:34:43 +01:00
177.out iotests: Split 177 into two parts for compat=0.10 2018-01-23 12:34:43 +01:00
178 iotests: add test 178 for qemu-img measure 2017-07-11 17:45:01 +02:00
178.out.qcow2 iotests: add test 178 for qemu-img measure 2017-07-11 17:45:01 +02:00
178.out.raw iotests: add test 178 for qemu-img measure 2017-07-11 17:45:01 +02:00
179 qemu-iotests: Remove blkdebug.conf after tests 2017-08-01 18:09:33 +02:00
179.out iotests: Add test 179 to cover write zeroes with unmap 2017-05-11 14:28:07 +02:00
181 iotests: fix 181: enable postcopy-ram capability on target 2017-09-26 14:46:23 +02:00
181.out iotests: fix 181: enable postcopy-ram capability on target 2017-09-26 14:46:23 +02:00
182 qemu-iotests: Use -nographic in 182 2017-11-17 13:35:59 +01:00
182.out tests: Add POSIX image locking test case 182 2017-05-11 12:08:20 +02:00
183 qemu-iotests: Block migration test 2017-06-09 11:45:03 +02:00
183.out qemu-iotests: Block migration test 2017-06-09 11:45:03 +02:00
184 iotests: Make 184 image-less 2018-01-23 12:34:43 +01:00
184.out iotests: Make 184 image-less 2018-01-23 12:34:43 +01:00
185 qemu-iotests: fix 185 2017-08-11 14:44:39 +02:00
185.out block: deprecate "encryption=on" in favor of "encrypt.format=aes" 2017-07-11 17:44:55 +02:00
186 qemu-iotests: Add missing -machine accel=qtest 2017-09-26 14:46:23 +02:00
186.out iotests: Redirect stderr to stdout in 186 2017-08-01 18:09:33 +02:00
187 qemu-iotests: Test reopen between read-only and read-write 2017-08-08 15:19:16 +02:00
187.out qemu-io: Drop write permissions before read-only reopen 2017-09-26 14:46:23 +02:00
188 qcow2: add iotests to cover LUKS encryption support 2017-07-11 17:44:56 +02:00
188.out qcow2: add iotests to cover LUKS encryption support 2017-07-11 17:44:56 +02:00
189 qemu-img: Check for backing image if specified during create 2017-07-18 15:27:37 +02:00
189.out qcow2: add iotests to cover LUKS encryption support 2017-07-11 17:44:56 +02:00
190 iotests: Add test of recent fix to 'qemu-img measure' 2017-08-01 18:09:33 +02:00
190.out iotests: Add test of recent fix to 'qemu-img measure' 2017-08-01 18:09:33 +02:00
191 iotests: Make 191 work with qcow2 options 2018-01-23 12:34:43 +01:00
191.out iotests: Make 191 work with qcow2 options 2018-01-23 12:34:43 +01:00
192 iotests: rewrite 192 to use _launch_qemu to fix LUKS support 2017-09-05 14:17:26 -05:00
192.out iotests: Add non-shared storage migration case 192 2017-08-15 10:03:28 -05:00
194 qemu-iotests: update unsupported image formats in 194 2017-11-14 18:06:26 +01:00
194.out qemu-iotests: Extend non-shared storage migration test (194) 2017-08-30 13:00:37 -05:00
195 iotests: Fix 195 if IMGFMT is part of TEST_DIR 2017-10-06 16:30:47 +02:00
195.out qemu-iotests: Test change-backing-file command 2017-09-26 14:46:23 +02:00
196 iotests: test clearing unknown autoclear_features by qcow2 2017-11-17 18:06:21 +01:00
196.out iotests: test clearing unknown autoclear_features by qcow2 2017-11-17 18:06:21 +01:00
197 iotests: fix 197 for vpc 2017-12-22 15:03:41 +01:00
197.out iotests: Add test 197 for covering copy-on-read 2017-10-06 16:28:58 +02:00
198 iotests: Filter compat-dependent info in 198 2018-01-23 12:34:43 +01:00
198.out iotests: Filter compat-dependent info in 198 2018-01-23 12:34:43 +01:00
200 iotests: Make 200 run on tmpfs 2018-01-31 22:37:00 -05:00
200.out qemu-iotest: add test for blockjob coroutine race condition 2017-11-21 11:58:12 -05:00
201 tests/qemu-iotests: adding savevm/loadvm with postcopy flag test 2018-01-23 12:33:07 +01:00
201.out tests/qemu-iotests: adding savevm/loadvm with postcopy flag test 2018-01-23 12:33:07 +01:00
202 qemu-iotests: add 202 external snapshots IOThread test 2017-12-19 10:25:09 +00:00
202.out qemu-iotests: add 202 external snapshots IOThread test 2017-12-19 10:25:09 +00:00
203 qemu-iotests: add 203 savevm with IOThreads test 2017-12-19 10:25:09 +00:00
203.out qemu-iotests: add 203 savevm with IOThreads test 2017-12-19 10:25:09 +00:00
204 iotests: Split 177 into two parts for compat=0.10 2018-01-23 12:34:43 +01:00
204.out iotests: Split 177 into two parts for compat=0.10 2018-01-23 12:34:43 +01:00
205 iotests: 205: support luks format 2018-02-09 12:32:44 -06:00
205.out iotest 205: new test for qmp nbd-server-remove 2018-01-26 09:37:21 -06:00
COPYING qemu-iotests: Initial import into the public repository. 2012-02-22 16:15:22 +01:00
Makefile iotests: record separate timings per format,protocol pair 2017-02-12 00:47:42 +01:00
README doc: Fix mailing list address in tests/qemu-iotests/README 2016-06-16 15:19:55 +02:00
check iotests: Restore stty settings on completion 2017-10-06 16:28:58 +02:00
common.config qemu-iotests: disintegrate more parts of common.config 2017-10-06 16:28:58 +02:00
common.filter iotests: Drop format-specific in _filter_img_info 2018-01-23 12:34:43 +01:00
common.pattern qemu-io: Switch 'alloc' command to byte-based length 2017-05-11 14:28:05 +02:00
common.qemu qemu-iotests: add option in common.qemu for mismatch only 2017-11-21 11:58:12 -05:00
common.rc iotests: Fix _img_info for backslashes 2018-01-23 12:34:43 +01:00
group iotest 205: new test for qmp nbd-server-remove 2018-01-26 09:37:21 -06:00
iotests.py iotests: 205: support luks format 2018-02-09 12:32:44 -06:00
nbd-fault-injector.py nbd: rename some simple-request related objects to be _simple_ 2017-10-12 16:27:34 -05:00
qcow2.py qcow2.py: Add required padding for header extensions 2014-12-10 10:31:13 +01:00
qed.py tests: Use Python 2.6 "except E as ..." syntax 2016-02-08 17:29:54 +01:00
socket_scm_helper.c socket_scm_helper: Accept fd directly 2016-10-27 19:05:23 +02:00

README

=== This is the QEMU I/O test suite ===

* Intro

This package contains a simple test suite for the I/O layer of qemu.
It does not require a guest, but only the qemu, qemu-img and qemu-io
binaries.  This does limit it to exercise the low-level I/O path only
but no actual block drivers like ide, scsi or virtio.

* Usage

Just run ./check to run all tests for the raw image format, or ./check
-qcow2 to test the qcow2 image format.  The output of ./check -h explains
additional options to test further image formats or I/O methods.

* Feedback and patches

Please send improvements to the test suite, general feedback or just
reports of failing tests cases to qemu-devel@nongnu.org with a CC:
to qemu-block@nongnu.org.