qemu/tests/qemu-iotests
Eric Blake a1532a225a iotests: New test 223 for exporting dirty bitmap over NBD
Although this test is NOT a full test of image fleecing (as it
intentionally uses just a single block device directly exported
over NBD, rather than trying to set up a blockdev-backup job with
multiple BDS involved), it DOES prove that qemu as a server is
able to properly expose a dirty bitmap over NBD.

When coupled with image fleecing, it is then possible for a
third-party client to do an incremental backup by using
qemu-img map with the x-dirty-bitmap option to learn which parts
of the file are dirty (perhaps confusingly, they are the portions
mapped as "data":false - which is part of the reason this is
still in the x- experimental namespace), along with another
normal client (perhaps 'qemu-nbd -c' to expose the server over
/dev/nbd0 and then just use normal I/O on that block device) to
read the dirty sections.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <20180702191458.28741-3-eblake@redhat.com>
Tested-by: John Snow <jsnow@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
2018-07-02 19:50:37 -05: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 iotests: Add test for rebasing with relative paths 2018-06-11 16:18:45 +02:00
024.out iotests: Add test for rebasing with relative paths 2018-06-11 16:18:45 +02:00
025 qemu-iotests: Enable 025 for luks 2018-03-26 12:17:40 +02:00
025.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
026 qemu-iotests: Test qcow2 not leaking clusters on write error 2018-06-29 14:20:56 +02:00
026.out qemu-iotests: Test qcow2 not leaking clusters on write error 2018-06-29 14:20:56 +02:00
026.out.nocache qemu-iotests: Test qcow2 not leaking clusters on write error 2018-06-29 14:20:56 +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-img: Remove deprecated -s snapshot_id_or_name option 2018-06-11 16:18:45 +02:00
029.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
030 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
030.out iotests: Tweak 030 in order to trigger a race condition with parallel jobs 2018-03-09 15:40:07 +01: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 iotests: Fix stuck NBD process on 33 2018-03-13 15:38:55 -05: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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
040.out block: Skip implicit nodes in query-block/blockstats 2017-07-24 15:06:04 +02:00
041 iotests: Move qmp_to_opts() to VM 2018-05-23 14:30:51 +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
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: Use visitor for options in qcow2_create() 2018-03-09 15:17:47 +01: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: Update 051 and 186 after commit 1454509726 2018-04-03 16:58:48 +02: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: add pause_wait 2018-03-19 12:01:24 +01:00
055.out qemu-iotests: test backup compression in 055 2016-09-05 19:06:48 +02:00
056 iotests: test manual job dismissal 2018-03-19 12:01:24 +01:00
056.out iotests: test manual job dismissal 2018-03-19 12:01:24 +01: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: Skip test for ENOMEM error 2018-03-09 15:40:07 +01:00
059.out iotests: Fix CID for VMDK afl image 2018-02-13 12:27:17 +01:00
060 tests: iotests: drop some stderr line 2018-06-30 17:50:48 +02:00
060.out tests: iotests: drop some stderr line 2018-06-30 17:50:48 +02:00
061 iotests: Test downgrading an image using a small L2 slice size 2018-02-13 17:00:00 +01:00
061.out block: Add Error parameter to bdrv_amend_options 2018-06-11 16:18:45 +02: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 qcow2: Fix src_offset in copy offloading 2018-06-29 14:20:56 +02:00
063.out qcow2: Fix src_offset in copy offloading 2018-06-29 14:20:56 +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 qemu-img: Remove deprecated -s snapshot_id_or_name option 2018-06-11 16:18:45 +02:00
080.out block: Add Error parameter to bdrv_amend_options 2018-06-11 16:18:45 +02: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 iotests: Test help option for unsupporting formats 2018-06-11 16:18:45 +02:00
082.out iotests: Test help option for unsupporting formats 2018-06-11 16:18:45 +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: 086 doesn't work with NFS 2018-05-23 13:29:06 +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 block: Handle null backing link 2018-03-19 14:58:36 -05:00
089.out block: Handle null backing link 2018-03-19 14:58:36 -05: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 python: futurize -f lib2to3.fixes.fix_has_key 2018-06-08 14:39:24 -03: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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
095 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
095.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
096 python: futurize -f lib2to3.fixes.fix_has_key 2018-06-08 14:39:24 -03: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 iotests: Test preallocated truncate of 2G image 2018-04-03 17:39:37 +02:00
106.out iotests: Test preallocated truncate of 2G image 2018-04-03 17:39:37 +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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
109.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +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 block: Add Error parameter to bdrv_amend_options 2018-06-11 16:18:45 +02:00
113 iotests: Rework 113 2018-06-11 16:18:45 +02:00
113.out iotests: Rework 113 2018-06-11 16:18:45 +02: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 python: futurize -f lib2to3.fixes.fix_numliterals 2018-06-08 14:39:24 -03: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 qcow2: Reset free_cluster_index when allocating a new refcount block 2018-03-26 12:16:00 +02:00
121.out qcow2: Reset free_cluster_index when allocating a new refcount block 2018-03-26 12:16:00 +02:00
122 iotests: Test post-backing convert target behavior 2018-06-11 16:18:45 +02:00
122.out iotests: Test post-backing convert target behavior 2018-06-11 16:18:45 +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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +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 qemu-iotests: Filter NFS paths 2018-05-23 13:29:03 +02:00
127 iotests: Add test for dataplane mirroring 2017-10-26 15:01:13 +02:00
127.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +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 iotests: Mark all tests executable 2018-03-09 15:40:07 +01: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 iotests: Mark all tests executable 2018-03-09 15:40:07 +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 python: futurize -f lib2to3.fixes.fix_has_key 2018-06-08 14:39:24 -03: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 qcow2: Give the refcount cache the minimum possible size by default 2018-05-15 16:15:21 +02: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 iotests: Mark all tests executable 2018-03-09 15:40:07 +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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
141.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02: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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
144.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +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 block: fix iotest 146 output expectations 2018-03-19 12:01:39 +01: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 iotests: Mark all tests executable 2018-03-09 15:40:07 +01:00
148.out iotests: Test QUORUM_REPORT_BAD in fifo mode 2016-03-17 16:43:30 +01:00
149 python: futurize -f libfuturize.fixes.fix_print_with_import 2018-06-08 14:39:24 -03: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
151 iotests: Add test for active mirroring 2018-06-18 17:05:17 +02:00
151.out iotests: Add test for active mirroring 2018-06-18 17:05:17 +02:00
152 iotests: Mark all tests executable 2018-03-09 15:40:07 +01:00
152.out iotests: Test case for drive-mirror with unaligned image size 2016-04-20 16:52:55 +02:00
153 iotests: Add creation test to 153 2018-06-11 16:18:45 +02:00
153.out iotests: Add creation test to 153 2018-06-11 16:18:45 +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: Move qmp_to_opts() to VM 2018-05-23 14:30:51 +02:00
155.out iotests: Add test for post-mirror backing chains 2016-06-16 15:20:37 +02:00
156 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
156.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +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 iotests: Mark all tests executable 2018-03-09 15:40:07 +01:00
163.out qemu-iotests: add shrinking image test 2017-09-26 15:00:32 +02:00
165 python: futurize -f libfuturize.fixes.fix_print_with_import 2018-06-08 14:39:24 -03:00
165.out iotests: test qcow2 persistent dirty bitmap 2017-07-11 17:44:59 +02:00
169 iotests: fix 169 2018-04-16 13:35:32 +02:00
169.out iotests: enable shared migration cases in 169 2018-03-26 21:17:24 +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: Skip 181 and 201 without userfaultfd 2018-05-15 16:15:21 +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: Remove _supported_fmt dmg 2018-04-10 16:33:43 +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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
185.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
186 iotests: Update 186 after commit ac64273c66 2018-04-03 16:58:48 +02:00
186.out iotests: Update 186 after commit ac64273c66 2018-04-03 16:58:48 +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 job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02:00
191.out job: Add JOB_STATUS_CHANGE QMP event 2018-05-23 14:30:51 +02: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: Remove _supported_fmt dmg 2018-04-10 16:33:43 +02: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: Clean up wrap image in 197 2018-05-15 16:15:21 +02: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
199 iotests: add dirty bitmap postcopy test 2018-03-13 17:06:32 -04:00
199.out iotests: add dirty bitmap postcopy test 2018-03-13 17:06:32 -04: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 iotests: Skip 181 and 201 without userfaultfd 2018-05-15 16:15:21 +02: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: fix 203 migration completion race 2018-03-09 15:40:07 +01:00
203.out qemu-iotests: fix 203 migration completion race 2018-03-09 15:40:07 +01: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: blacklist bochs and cloop for 205 and 208 2018-04-10 16:33:08 +02:00
205.out iotest 205: new test for qmp nbd-server-remove 2018-01-26 09:37:21 -06:00
206 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
206.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
207 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
207.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
208 iotests: blacklist bochs and cloop for 205 and 208 2018-04-10 16:33:08 +02:00
208.out iotests: add 208 nbd-server + blockdev-snapshot-sync test case 2018-03-13 15:38:55 -05:00
209 iotests: new test 209 for NBD BLOCK_STATUS 2018-03-13 15:44:09 -05:00
209.out iotests: new test 209 for NBD BLOCK_STATUS 2018-03-13 15:44:09 -05:00
210 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
210.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
211 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
211.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
212 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
212.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
213 block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
213.out block/create: Mark blockdev-create stable 2018-05-30 13:31:18 +02:00
214 iotests: Split 214 off of 122 2018-05-15 16:15:21 +02:00
214.out iotests: Split 214 off of 122 2018-05-15 16:15:21 +02:00
215 iotests: Copy 197 for COR filter driver 2018-05-15 16:15:21 +02:00
215.out iotests: Copy 197 for COR filter driver 2018-05-15 16:15:21 +02:00
216 iotests: Let 216 make use of qemu-io's exit code 2018-06-11 16:18:45 +02:00
216.out iotests: Let 216 make use of qemu-io's exit code 2018-06-11 16:18:45 +02:00
217 iotests: Repairing error during snapshot deletion 2018-06-11 16:18:45 +02:00
217.out iotests: Repairing error during snapshot deletion 2018-06-11 16:18:45 +02:00
218 iotests: Add test for cancelling a mirror job 2018-05-08 10:47:27 -04:00
218.out iotests: Add test for cancelling a mirror job 2018-05-08 10:47:27 -04:00
219 iotests: Fix 219's timing 2018-06-11 16:18:45 +02:00
219.out iotests: Fix 219's timing 2018-06-11 16:18:45 +02:00
221 iotests: Add test 221 to catch qemu-img map regression 2018-06-15 14:49:44 +02:00
221.out iotests: Add test 221 to catch qemu-img map regression 2018-06-15 14:49:44 +02:00
222 iotests: add 222 to test basic fleecing 2018-07-02 15:24:07 -05:00
222.out iotests: add 222 to test basic fleecing 2018-07-02 15:24:07 -05:00
223 iotests: New test 223 for exporting dirty bitmap over NBD 2018-07-02 19:50:37 -05:00
223.out iotests: New test 223 for exporting dirty bitmap over NBD 2018-07-02 19:50:37 -05:00
check qemu-iotests: Use ppc64 qemu_arch on ppc64le host 2018-04-03 17:39:37 +02:00
common.config qemu-iotests: Use ppc64 qemu_arch on ppc64le host 2018-04-03 17:39:37 +02:00
common.filter main-loop: drop spin_counter 2018-06-01 16:01:29 +01:00
common.pattern qemu-io: Switch 'alloc' command to byte-based length 2017-05-11 14:28:05 +02:00
common.qemu iotests: Add failure matching to common.qemu 2018-05-15 16:15:21 +02:00
common.rc qemu-iotests: Filter NFS paths 2018-05-23 13:29:03 +02:00
COPYING
group iotests: New test 223 for exporting dirty bitmap over NBD 2018-07-02 19:50:37 -05:00
iotests.py Python queue, 2018-06-11 2018-06-12 11:56:21 +01:00
Makefile iotests: record separate timings per format,protocol pair 2017-02-12 00:47:42 +01:00
nbd-fault-injector.py python: futurize -f libfuturize.fixes.fix_print_with_import 2018-06-08 14:39:24 -03:00
qcow2.py python: futurize -f libfuturize.fixes.fix_print_with_import 2018-06-08 14:39:24 -03:00
qed.py python: futurize -f libfuturize.fixes.fix_print_with_import 2018-06-08 14:39:24 -03:00
README doc: Fix mailing list address in tests/qemu-iotests/README 2016-06-16 15:19:55 +02:00
socket_scm_helper.c socket_scm_helper: Accept fd directly 2016-10-27 19:05:23 +02:00

=== 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.