qemu-e2k/tests/qemu-iotests
John Snow fc6c796ff2 iotests: 124 - transactional failure test
Use a transaction to request an incremental backup across two drives.
Coerce one of the jobs to fail, and then re-run the transaction.

Verify that no bitmap data was lost due to the partial transaction
failure.

To support the 'err-cancel' QMP argument name it's necessary for
transaction_action() to convert underscores in Python argument names
to hyphens for QMP argument names.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 1446765200-3054-14-git-send-email-jsnow@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2015-11-12 16:22:44 +01:00
..
sample_images block: qemu-iotests - add check for multiplication overflow in vpc 2015-07-27 17:19:07 +02:00
.gitignore gitignore: Track common.env in iotests gitignore 2015-03-10 08:15:34 +03:00
001
001.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
002
002.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
003
003.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
004 iotests: Drop vpc from 004's and 104's format list 2015-03-10 14:02:24 +01:00
004.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
005
005.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
007 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
007.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
008
008.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
009
009.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
010
010.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
011
011.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
012
012.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
013
013.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
014
014.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
015 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
015.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
017
017.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
018
018.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
019
019.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
020
020.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
021
021.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
022
022.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
023
023.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
024
024.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
025 qemu-iotests: Run 025 for Archipelago block driver 2014-09-10 10:41:29 +02:00
025.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
026 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
026.out blkdebug: fix "once" rule 2015-03-10 14:02:21 +01:00
026.out.nocache
027
027.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
028 qemu-iotests: Fix 028 reference output for qed 2014-08-20 11:51:28 +02:00
028.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
029 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
029.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
030 qemu-iotests: Add qemu-io format option in Python tests 2014-12-10 10:31:12 +01:00
030.out
031 iotests: Use $PYTHON for Python scripts 2014-06-27 20:00:00 +02:00
031.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
032
032.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
033 qemu-iotests: Test unaligned sub-block zero write 2015-05-22 09:37:33 +01:00
033.out qemu-iotests: Test unaligned sub-block zero write 2015-05-22 09:37:33 +01:00
034
034.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
035
035.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
036 qcow2: Fix error path for unknown incompatible features 2014-07-18 13:12:15 +01:00
036.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
037
037.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
038
038.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
039 qemu-iotests: Reopen qcow2 with lazy-refcounts change 2015-09-14 16:51:37 +02:00
039.out qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
040 qemu-iotests: Test the reopening of overlay_bs in 'block-commit' 2015-11-11 16:25:47 +01:00
040.out qemu-iotests: Test the reopening of overlay_bs in 'block-commit' 2015-11-11 16:25:47 +01:00
041 block: auto-generated node-names 2015-10-16 15:34:30 +02:00
041.out mirror: Fix qiov size for short requests 2014-07-07 09:15:29 +02:00
042
042.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
043
043.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
044
044.out
045
045.out
046
046.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
047
047.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
048 qemu-iotests: Use qemu-io -f $IMGFMT 2014-12-10 10:31:12 +01:00
048.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
049
049.out tests: Fix test 049 fallout from improved HMP error messages 2015-10-02 13:48:29 +02:00
050
050.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
051 block: auto-generated node-names 2015-10-16 15:34:30 +02:00
051.out block: auto-generated node-names 2015-10-16 15:34:30 +02:00
052 qemu-iotests: Fix supported cache modes for 052 2014-10-03 10:30:33 +01:00
052.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
053
053.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
054 iotests: Use $PYTHON for Python scripts 2014-06-27 20:00:00 +02:00
054.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
055 iotests: Respect -nodefaults in tests 41 and 55 2015-09-04 20:59:48 +02:00
055.out qemu-iotests: Test blockdev-backup in 055 2015-01-13 11:47:56 +00:00
056
056.out
057
057.out
058 qemu-iotests: fix cleanup of background processes 2015-11-11 16:55:28 +01:00
058.out
059 qemu-iotests: qemu-img info on afl VMDK image with a huge capacity 2015-05-22 17:08:01 +02:00
059.out block: qemu-iotests - fix vmdk test 059.out 2015-10-16 15:34:29 +02:00
060 iotests: Add tests for more corruption cases 2015-01-23 18:17:05 +01:00
060.out qcow2: Add refcount_bits to format-specific info 2015-03-10 14:02:20 +01:00
061 iotests: disable core dumps in test 061 2015-10-16 15:34:29 +02:00
061.out qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
062
062.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
063
063.out
064 iotests: Lower 064's memory usage 2015-01-23 12:41:32 -05: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
066
066.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
067 block: auto-generated node-names 2015-10-16 15:34:30 +02:00
067.out block: auto-generated node-names 2015-10-16 15:34:30 +02:00
068
068.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
069 block: delete cow block driver 2014-09-22 11:39:45 +01:00
069.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
070 iotests: Use _img_info 2014-10-04 19:18:17 +01:00
070.out iotests: Use _img_info 2014-10-04 19:18:17 +01:00
071 iotests: Only create BB if necessary 2015-10-23 18:18:22 +02:00
071.out iotests: Only create BB if necessary 2015-10-23 18:18:22 +02:00
072 block: delete cow block driver 2014-09-22 11:39:45 +01:00
072.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
073
073.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
074
074.out
075 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
075.out
076 iotests, parallels: test for write into Parallels image 2015-05-22 09:37:31 +01:00
076.out iotests, parallels: test for write into Parallels image 2015-05-22 09:37:31 +01:00
077 qemu-iotests: Use qemu-io -f $IMGFMT 2014-12-10 10:31:12 +01:00
077.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
078 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
078.out
079 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
079.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
080 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
080.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
081 iotests: Only create BB if necessary 2015-10-23 18:18:22 +02:00
081.out iotests: Only create BB if necessary 2015-10-23 18:18:22 +02:00
082 qemu-iotests: 082: Filter the real disk size 2014-12-10 10:31:16 +01:00
082.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
083 nbd: Improve error messages 2015-02-06 17:24:22 +01:00
083.out nbd: Improve error messages 2015-02-06 17:24:22 +01:00
084 block/vdi: Limit maximum size even futher 2014-11-09 23:39:50 +01:00
084.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
085 block: test 'blockdev-snapshot' using a file BDS as the overlay 2015-11-11 16:25:48 +01:00
085.out block: test 'blockdev-snapshot' using a file BDS as the overlay 2015-11-11 16:25:48 +01:00
086 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
086.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
087 blockdev: Allow creation of BDS trees without BB 2015-10-23 18:18:22 +02:00
087.out blockdev: Allow creation of BDS trees without BB 2015-10-23 18:18:22 +02:00
088 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
088.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
089 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
089.out qcow2: Add refcount_bits to format-specific info 2015-03-10 14:02:20 +01:00
090 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
090.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
091 qemu-iotests: Handle cache mode option in 091 2014-05-28 14:22:25 +02:00
091.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
092 block: qemu-iotests change _supported_proto to file once more. 2014-10-23 15:34:01 +02:00
092.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
093 qemu-iotests: expand test 093 to support group throttling 2015-06-12 14:00:00 +01:00
093.out qemu-iotests: Add 093 for IO throttling 2015-02-16 15:07:18 +00:00
094 iotests: Add test for drive-mirror with NBD target 2015-02-16 14:36:03 +00:00
094.out iotests: Add test for drive-mirror with NBD target 2015-02-16 14:36:03 +00:00
095 iotests: Use _img_info 2014-10-04 19:18:17 +01:00
095.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
096 throttle: test that snapshots move the throttling configuration 2015-10-16 15:34:29 +02:00
096.out throttle: test that snapshots move the throttling configuration 2015-10-16 15:34:29 +02:00
097 iotests: Add test for backing-chain commits 2014-11-03 11:41:48 +00:00
097.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
098 iotests: Add test for qcow2's bdrv_make_empty 2014-11-03 11:41:48 +00:00
098.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
099 iotests: Filter out "I/O thread spun..." warning 2015-01-13 11:47:56 +00:00
099.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
100 iotests: Fix 100 for nbd 2015-02-06 17:24:22 +01:00
100.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
101 qemu-iotests: add test case 101 for short file I/O 2014-08-22 11:01:12 +02:00
101.out qemu-iotests: add test case 101 for short file I/O 2014-08-22 11:01:12 +02:00
102 iotests: Add test for external image truncation 2014-11-03 11:41:47 +00:00
102.out iotests: Add test for external image truncation 2014-11-03 11:41:47 +00:00
103 iotests: qcow2 COW with minimal L2 cache size 2015-06-12 15:54:01 +02:00
103.out iotests: qcow2 COW with minimal L2 cache size 2015-06-12 15:54:01 +02:00
104 iotests: Drop vpc from 004's and 104's format list 2015-03-10 14:02:24 +01:00
104.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
105 vmdk: Fix integer overflow in offset calculation 2014-10-03 10:30:33 +01:00
105.out vmdk: Fix integer overflow in offset calculation 2014-10-03 10:30:33 +01:00
107 block: qemu-iotest 107 supports NFS 2014-11-03 11:41:48 +00:00
107.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
108 iotests: Prepare for refcount_bits option 2015-03-10 14:02:21 +01:00
108.out qemu-iotests: Remove traling whitespaces in *.out 2014-12-12 16:52:33 +00:00
109 qemu-iotests: Test writing non-raw image headers to raw image 2014-12-10 10:31:13 +01:00
109.out qemu-iotests: Test writing non-raw image headers to raw image 2014-12-10 10:31:13 +01:00
110 iotests: Add test for relative backing file names 2015-01-13 11:47:56 +00:00
110.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
111 iotests: Add test for non-existing backing file 2014-11-06 12:45:47 +01:00
111.out iotests: Add test for non-existing backing file 2014-11-06 12:45:47 +01:00
112 iotests: Add test for different refcount widths 2015-03-10 14:02:21 +01:00
112.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
113 iotests: Add test for unsupported image creation 2014-12-10 10:31:20 +01:00
113.out iotests: Add test for unsupported image creation 2014-12-10 10:31:20 +01:00
114 block: Don't probe for unknown backing file format 2014-12-10 10:31:13 +01:00
114.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
115 iotests: Test non-self-referential qcow2 refblocks 2015-03-16 12:10:30 -04:00
115.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
116 qemu-iotests: add 116 invalid QED input file tests 2015-02-06 17:24:21 +01:00
116.out qemu-iotests: add 116 invalid QED input file tests 2015-02-06 17:24:21 +01:00
118 iotests: Add test for change-related QMP commands 2015-11-11 16:25:47 +01:00
118.out iotests: Add test for change-related QMP commands 2015-11-11 16:25:47 +01:00
119 iotests: Add tests for overriding BDRV_O_PROTOCOL 2015-06-12 15:54:08 +02:00
119.out iotests: Add tests for overriding BDRV_O_PROTOCOL 2015-06-12 15:54:08 +02:00
120 iotests: Add tests for overriding BDRV_O_PROTOCOL 2015-06-12 15:54:08 +02:00
120.out iotests: Add tests for overriding BDRV_O_PROTOCOL 2015-06-12 15:54:08 +02:00
121 iotests: Add tests for refcount table growth 2015-03-16 12:10:30 -04:00
121.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
122 qemu-iotests: Some qemu-img convert tests 2015-04-28 15:36:09 +02:00
122.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
123 iotests: Add test for qemu-img convert to NBD 2015-02-16 15:07:18 +00:00
123.out iotests: Add test for qemu-img convert to NBD 2015-02-16 15:07:18 +00:00
124 iotests: 124 - transactional failure test 2015-11-12 16:22:44 +01:00
124.out iotests: 124 - transactional failure test 2015-11-12 16:22:44 +01:00
128 iotests: Fix test 128 for password-less sudo 2015-10-02 13:48:29 +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 qemu-iotests: s390x: fix test 130 2015-09-04 20:59:48 +02:00
130.out opts: produce valid command line in qemu_opts_print 2015-09-11 10:21:38 +03:00
131 iotests, parallels: check for incorrectly closed image in tests 2015-05-22 09:37:32 +01:00
131.out iotests, parallels: check for incorrectly closed image in tests 2015-05-22 09:37:32 +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
134 tests: add test case for encrypted qcow2 read/write 2015-05-22 17:08:09 +02:00
134.out tests: add test case for encrypted qcow2 read/write 2015-05-22 17:08:09 +02:00
135 block: qemu-iotests - add check for multiplication overflow in vpc 2015-07-27 17:19:07 +02:00
135.out block: qemu-iotests - add check for multiplication overflow in vpc 2015-07-27 17:19:07 +02:00
137 qemu-iotests: More qcow2 reopen tests 2015-09-14 16:51:37 +02:00
137.out qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
138 iotests: Add test for checking large image files 2015-09-14 16:51:37 +02:00
138.out iotests: Add test for checking large image files 2015-09-14 16:51:37 +02:00
139 iotests: Check for quorum support in test 139 2015-11-11 16:59:44 +01:00
139.out iotests: Add tests for the x-blockdev-del command 2015-11-11 16:55:29 +01:00
check iotests: Do not suppress segfaults in bash tests 2015-09-04 20:59:48 +02:00
common qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
common.config qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
common.filter block: auto-generated node-names 2015-10-16 15:34:30 +02:00
common.pattern
common.qemu qemu-iotests: fix cleanup of background processes 2015-11-11 16:55:28 +01:00
common.rc qemu-iotests: fix -valgrind option for check 2015-11-11 16:55:28 +01:00
COPYING
group iotests: Add tests for the x-blockdev-del command 2015-11-11 16:55:29 +01:00
iotests.py iotests: Warn if python subprocess is killed 2015-09-04 20:59:48 +02:00
Makefile
nbd-fault-injector.py
qcow2.py qcow2.py: Add required padding for header extensions 2014-12-10 10:31:13 +01:00
qed.py
README
socket_scm_helper.c iotests: Send the correct fd in socket_scm_helper 2014-09-12 10:27:54 +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@savannah.nongnu.org.