qemu-e2k/tests/qemu-iotests
Thomas Huth 9086c76398 tests/qemu-iotests: Rework the checks and spots using GNU sed
Instead of failing the iotests if GNU sed is not available (or skipping
them completely in the check-block.sh script), it would be better to
simply skip the bash-based tests that rely on GNU sed, so that the other
tests could still be run. Thus we now explicitely use "gsed" (either as
direct program or as a wrapper around "sed" if it's the GNU version)
in the spots that rely on the GNU sed behavior. Statements that use the
"-r" parameter of sed have been switched to use "-E" instead, since this
switch is supported by all sed versions on our supported build hosts
(most also support "-r", but macOS' sed only supports "-E"). With all
these changes in place, we then can also remove the sed checks from the
check-block.sh script, so that "make check-block" can now be run on
systems without GNU sed, too.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20220216125454.465041-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2022-03-04 18:18:26 +01:00
..
sample_images iotests: add parallels-read-bitmap test 2021-03-08 14:56:55 +01:00
tests iotests/graph-changes-while-io: New test 2022-03-04 18:18:26 +01:00
001
001.out
002
002.out
003
003.out
004
004.out
005 block: Drop the sheepdog block driver 2021-05-12 17:42:23 +02:00
005.out
007
007.out
008
008.out
009
009.out
010
010.out
011
011.out
012
012.out
013
013.out
014
014.out
015
015.out
017
017.out
018
018.out
019
019.out
020
020.out
021
021.out
022
022.out
023
023.out
024
024.out
025 block: Drop the sheepdog block driver 2021-05-12 17:42:23 +02:00
025.out
026
026.out
026.out.nocache
027
027.out
028
028.out
029
029.out
030 iotests/030: Unthrottle parallel jobs in reverse 2021-11-16 09:43:48 +01:00
030.out
031 iotests: declare lack of support for compresion_type in IMGOPTS 2022-02-01 10:51:39 +01:00
031.out
032
032.out
033
033.out
034
034.out
035
035.out
036 iotests: massive use _qcow2_dump_header 2022-02-01 10:51:39 +01:00
036.out
037
037.out
038
038.out
039 iotest 39: use _qcow2_dump_header 2022-02-01 10:51:39 +01:00
039.out
040 python/machine: remove has_quit argument 2021-11-01 11:54:59 -04:00
040.out
041 qemu-img: Require -F with -b backing image 2021-07-09 13:18:32 +02:00
041.out
042
042.out
043
043.out
044 iotests: drop qemu_img_verbose() helper 2022-02-01 10:51:39 +01:00
044.out iotests: drop qemu_img_verbose() helper 2022-02-01 10:51:39 +01:00
045
045.out
046 iotests/046: Filter request length 2021-03-29 18:06:14 +02:00
046.out iotests/046: Filter request length 2021-03-29 18:06:14 +02:00
047
047.out
048
048.out
049
049.out qapi: Improve input_type_enum()'s error message 2021-10-27 17:17:28 +02:00
050
050.out
051 iotests: declare lack of support for compresion_type in IMGOPTS 2022-02-01 10:51:39 +01:00
051.out iotests: fix 051.out expected output after error text touchups 2021-03-29 14:13:55 +02:00
051.pc.out iotests/051: Fix typo 2021-10-15 16:06:23 +02:00
052
052.out
053
053.out
054
054.out
055
055.out
056
056.out
057
057.out
058
058.out
059
059.out
060 iotests 60: more accurate set dirty bit in qcow2 header 2022-02-01 10:51:39 +01:00
060.out iotests: bash tests: filter compression type 2022-02-01 10:51:39 +01:00
061 iotests: declare lack of support for compresion_type in IMGOPTS 2022-02-01 10:51:39 +01:00
061.out iotests: bash tests: filter compression type 2022-02-01 10:51:39 +01:00
062
062.out
063
063.out
064
064.out
065 iotest 065: explicit compression type 2022-02-01 10:51:39 +01:00
065.out
066
066.out
068 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
068.out
069
069.out
070
070.out
071
071.out
072
072.out
073
073.out
074
074.out
075
075.out
076
076.out
077
077.out
078
078.out
079
079.out
080
080.out
081
081.out block: Clarify error messages pertaining to 'node-name' 2021-03-08 14:56:55 +01:00
082
082.out iotests: bash tests: filter compression type 2022-02-01 10:51:39 +01:00
083
083.out
084
084.out
085 block: Fail gracefully when blockdev-snapshot creates loops 2021-11-02 13:02:46 +01:00
085.out block: Fail gracefully when blockdev-snapshot creates loops 2021-11-02 13:02:46 +01:00
086
086.out
087 iotests: Drop deprecated 'props' from object-add 2021-03-08 14:55:18 +01:00
087.out block: Clarify error messages pertaining to 'node-name' 2021-03-08 14:56:55 +01:00
088
088.out
089
089.out
090
090.out
091
091.out
092
092.out
093 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
093.out
094
094.out
095
095.out
096
096.out
097
097.out
098
098.out
099
099.out
101
101.out
102
102.out
103
103.out
104
104.out
105
105.out
106
106.out
107
107.out
108
108.out
109
109.out job: @force parameter for job_cancel_sync() 2021-10-07 10:42:09 +02:00
110
110.out
111
111.out
112 iotests: declare lack of support for compresion_type in IMGOPTS 2022-02-01 10:51:39 +01:00
112.out
113
113.out
114 qemu-img: Require -F with -b backing image 2021-07-09 13:18:32 +02:00
114.out qemu-img: Improve error for rebase without backing format 2021-07-09 13:19:09 +02:00
115
115.out
116
116.out iotests/116: Fix reference output 2021-03-29 14:13:55 +02:00
117
117.out
118
118.out
119
119.out
120
120.out
121
121.out
122 iotests: Test qemu-img convert of zeroed data cluster 2022-01-14 12:03:16 +01:00
122.out qemu-img: make is_allocated_sectors() more efficient 2022-01-14 12:03:16 +01:00
123
123.out
124 block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
124.out
125
125.out
126
126.out
127 iotests: iothreads need ioeventfd 2021-03-24 14:25:48 +00:00
127.out
128
128.out
129 pylint: fix errors and warnings generated by tests/qemu-iotests/297 2021-11-02 12:47:51 +01:00
129.out
130
130.out
131
131.out
132
132.out
133
133.out
134
134.out
135
135.out
136
136.out
137 iotests: massive use _qcow2_dump_header 2022-02-01 10:51:39 +01:00
137.out
138
138.out
139 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
139.out
140
140.out
141
141.out blockjob: drop BlockJob.blk field 2021-12-28 15:18:59 +01:00
142 file-posix: Fix alignment after reopen changing O_DIRECT 2021-11-16 11:30:29 +01:00
142.out file-posix: Fix alignment after reopen changing O_DIRECT 2021-11-16 11:30:29 +01:00
143
143.out
144
144.out
145
145.out
146
146.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
147
147.out
148
148.out
149 iotests/149: Skip on unsupported ciphers 2021-11-23 15:39:12 +01:00
149.out iotests.py: filter out successful output of qemu-img create 2022-02-01 10:51:39 +01:00
150
150.out.qcow2
150.out.raw
151 block/mirror: fix active mirror dead-lock in mirror_wait_on_conflicts 2021-07-20 13:14:45 +02:00
151.out iotest 151: add test-case that shows active mirror dead-lock 2021-07-20 13:14:45 +02:00
152
152.out
153
153.out
154
154.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
155 block: Make blockdev-reopen stable API 2021-07-09 13:19:11 +02:00
155.out
156
156.out
157
157.out
158
158.out
159
159.out
160
160.out
161
161.out
162
162.out
163 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
163.out
165 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
165.out
170
170.out
171
171.out
172 fdc: Drop deprecated floppy configuration 2021-03-19 15:18:43 +01:00
172.out block: Add backend_defaults property 2021-07-06 14:28:55 +01:00
173
173.out
174
174.out
175
175.out
176
176.out
177
177.out
178
178.out.qcow2 utils: Improve qemu_strtosz() to have 64 bits of precision 2021-03-08 13:36:12 -06:00
178.out.raw utils: Improve qemu_strtosz() to have 64 bits of precision 2021-03-08 13:36:12 -06:00
179
179.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
181 migrate: remove QMP/HMP commands for speed, downtime and cache size 2021-03-18 09:22:55 +00:00
181.out
182 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
182.out
183
183.out
184 iotests: Drop deprecated 'props' from object-add 2021-03-08 14:55:18 +01:00
184.out block: remove 'encryption_key_missing' flag from QAPI 2021-03-18 09:22:55 +00:00
185 iotests/185: Add post-READY quit tests 2022-03-04 18:14:40 +01:00
185.out iotests/185: Add post-READY quit tests 2022-03-04 18:14:40 +01:00
186
186.out
187
187.out
188
188.out
189 block: BDRV_O_NO_IO for backing file on creation 2021-06-29 16:51:00 +02:00
189.out
190
190.out
191
191.out block: remove 'encryption_key_missing' flag from QAPI 2021-03-18 09:22:55 +00:00
192
192.out
194 block: remove 'dirty-bitmaps' field from 'BlockInfo' struct 2021-03-18 09:22:55 +00:00
194.out block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
195
195.out
196 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
196.out
197
197.out
198 block: BDRV_O_NO_IO for backing file on creation 2021-06-29 16:51:00 +02:00
198.out iotests: bash tests: filter compression type 2022-02-01 10:51:39 +01:00
200
200.out
201
201.out
202
202.out
203
203.out
204
204.out
205
205.out
206 iotests: Use aes-128-cbc 2021-11-23 15:39:12 +01:00
206.out iotests.py: filter compression type out 2022-02-01 10:51:39 +01:00
207 block/ssh: add support for sha256 host key fingerprints 2021-06-30 12:45:32 +02:00
207.out block/ssh: add support for sha256 host key fingerprints 2021-06-30 12:45:32 +02:00
208
208.out
209 iotests: drop qemu_img_verbose() helper 2022-02-01 10:51:39 +01:00
209.out iotests: drop qemu_img_verbose() helper 2022-02-01 10:51:39 +01:00
210 iotests.py: img_info_log(): rename imgopts argument 2022-02-01 10:51:39 +01:00
210.out iotests: Use aes-128-cbc 2021-11-23 15:39:12 +01:00
211
211.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
212
212.out block: Clarify error messages pertaining to 'node-name' 2021-03-08 14:56:55 +01:00
213
213.out block: Clarify error messages pertaining to 'node-name' 2021-03-08 14:56:55 +01:00
214 iotest 214: explicit compression type 2022-02-01 10:51:39 +01:00
214.out
215
215.out
216
216.out
217
217.out
218 python/machine: remove has_quit argument 2021-11-01 11:54:59 -04:00
218.out
219
219.out
220
220.out
221
221.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
223
223.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
224
224.out
225
225.out
226
226.out block: remove support for using "file" driver with block/char devices 2021-03-18 09:22:55 +00:00
227
227.out
228
228.out
229
229.out
231 block/rbd: Add an escape-aware strchr helper 2021-05-14 16:14:10 +02:00
231.out block/rbd: Add an escape-aware strchr helper 2021-05-14 16:14:10 +02:00
232
232.out
233 tests: filter out TLS distinguished name in certificate checks 2021-08-09 17:32:43 +02:00
233.out tests: filter out TLS distinguished name in certificate checks 2021-08-09 17:32:43 +02:00
234
234.out
235 iotests: add 'qemu' package location to PYTHONPATH in testenv 2021-10-06 10:25:55 +02:00
235.out
236 block: remove 'dirty-bitmaps' field from 'BlockInfo' struct 2021-03-18 09:22:55 +00:00
236.out block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
237
237.out iotests.py: filter out successful output of qemu-img create 2022-02-01 10:51:39 +01:00
238 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
238.out
239
239.out
240 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
240.out qemu-iotests: do not buffer the test output 2021-05-14 16:14:10 +02:00
241
241.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
242 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
242.out iotests.py: filter compression type out 2022-02-01 10:51:39 +01:00
243
243.out
244 iotests/244: Test preallocation for data-file-raw 2021-03-30 13:02:11 +02:00
244.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
245 iotests: Test blockdev-reopen with iothreads and throttling 2022-02-11 09:44:16 +01:00
245.out iotests: Test blockdev-reopen with iothreads and throttling 2022-02-11 09:44:16 +01:00
246 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
246.out block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
247
247.out
248 block: Make blockdev-reopen stable API 2021-07-09 13:19:11 +02:00
248.out block: Make blockdev-reopen stable API 2021-07-09 13:19:11 +02:00
249
249.out block: Clarify error messages pertaining to 'node-name' 2021-03-08 14:56:55 +01:00
250
250.out
251
251.out
252
252.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
253
253.out qemu-img: Make unallocated part of backing chain obvious in map 2021-07-12 11:10:53 -05:00
254 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
254.out block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
255 python/machine: remove has_quit argument 2021-11-01 11:54:59 -04:00
255.out iotests.py: filter out successful output of qemu-img create 2022-02-01 10:51:39 +01:00
256 iotests: iothreads need ioeventfd 2021-03-24 14:25:48 +00:00
256.out
257 iotests: Revert "iotests: use -ccw on s390x for 040, 139, and 182" 2021-03-24 14:25:48 +00:00
257.out block: remove dirty bitmaps 'status' field 2021-03-18 09:22:55 +00:00
258 iotests: Drop deprecated 'props' from object-add 2021-03-08 14:55:18 +01:00
258.out iotests: Drop deprecated 'props' from object-add 2021-03-08 14:55:18 +01:00
259 tests/qemu-iotests: Remove test 259 from the "auto" group 2021-02-15 15:10:14 +01:00
259.out
260 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
260.out
261
261.out
262
262.out
263
263.out
264 mirror: stop cancelling in-flight requests on non-force cancel in READY 2021-05-14 16:14:10 +02:00
264.out iotests/264: add backup-cancel test-case 2021-02-12 12:19:46 -06:00
265
265.out
266
266.out
267
267.out block: allow specifying name of block device for vmstate storage 2021-02-08 11:19:51 +00:00
268
268.out
270
270.out
271 tests/qemu-iotests: Rework the checks and spots using GNU sed 2022-03-04 18:18:26 +01:00
271.out qcow2: handle_dependencies(): relax conflict detection 2021-09-15 15:54:07 +02:00
272
272.out
273
273.out block: drop BLK_PERM_GRAPH_MOD 2022-01-14 12:03:16 +01:00
274 iotests: specify some unsupported_imgopts for python iotests 2022-02-01 10:51:39 +01:00
274.out iotests.py: filter compression type out 2022-02-01 10:51:39 +01:00
277
277.out
279
279.out
280
280.out iotests.py: filter out successful output of qemu-img create 2022-02-01 10:51:39 +01:00
281 iotests/281: Let NBD connection yield in iothread 2022-02-11 14:06:18 +01:00
281.out iotests/281: Let NBD connection yield in iothread 2022-02-11 14:06:18 +01:00
282
282.out
283 blockjob: drop BlockJob.blk field 2021-12-28 15:18:59 +01:00
283.out blockjob: drop BlockJob.blk field 2021-12-28 15:18:59 +01:00
284
284.out
286
286.out
287 iotests: bash tests: filter compression type 2022-02-01 10:51:39 +01:00
287.out
288
288.out
289
289.out
290 iotests: declare lack of support for compresion_type in IMGOPTS 2022-02-01 10:51:39 +01:00
290.out
292
292.out
293
293.out
294
294.out
295 iotests: Drop deprecated 'props' from object-add 2021-03-08 14:55:18 +01:00
295.out qemu-iotests: do not buffer the test output 2021-05-14 16:14:10 +02:00
296 crypto: perform permission checks under BQL 2022-03-04 18:14:39 +01:00
296.out crypto: perform permission checks under BQL 2022-03-04 18:14:39 +01:00
297 iotests: split linters.py out from 297 2021-11-01 11:54:59 -04:00
297.out
298 block: Make blockdev-reopen stable API 2021-07-09 13:19:11 +02:00
298.out
299
299.out
300 iotests/300: avoid abnormal shutdown race condition 2021-11-01 11:54:59 -04:00
300.out qemu-iotests: 300: Add test case for modifying persistence of bitmap 2021-02-12 15:32:04 -06:00
301 qemu-img: Require -F with -b backing image 2021-07-09 13:18:32 +02:00
301.out qemu-img: Require -F with -b backing image 2021-07-09 13:18:32 +02:00
302 iotest 302: use img_info_log() helper 2022-02-01 10:51:39 +01:00
302.out iotest 302: use img_info_log() helper 2022-02-01 10:51:39 +01:00
303 iotest 303: explicit compression type 2022-02-01 10:51:39 +01:00
303.out iotest 303: explicit compression type 2022-02-01 10:51:39 +01:00
304
304.out
305
305.out
307 iotests/307: Test iothread conflict for exports 2021-07-20 16:49:50 +02:00
307.out iotests/307: Test iothread conflict for exports 2021-07-20 16:49:50 +02:00
308 iotests/308: Fix for CAP_DAC_OVERRIDE 2022-01-14 12:03:16 +01:00
308.out iotests/308: Fix for CAP_DAC_OVERRIDE 2022-01-14 12:03:16 +01:00
310 pylint: fix errors and warnings generated by tests/qemu-iotests/297 2021-11-02 12:47:51 +01:00
310.out
312
312.out
313
313.out
check check-block: replace -makecheck with TAP output 2022-01-28 11:13:33 +01:00
common.config
common.filter tests/qemu-iotests: Rework the checks and spots using GNU sed 2022-03-04 18:18:26 +01:00
common.nbd
common.pattern
common.qemu qemu-iotests: add gdbserver option to script tests too 2021-09-01 12:57:31 +02:00
common.rc tests/qemu-iotests: Rework the checks and spots using GNU sed 2022-03-04 18:18:26 +01:00
common.tls
findtests.py
iotests.py iotests: Allow using QMP with the QSD 2022-03-04 18:18:26 +01:00
linters.py iotests/linters: Add workaround for mypy bug #9852 2021-11-01 11:54:59 -04:00
Makefile
meson.build configure, meson: move some default-disabled options to meson_options.txt 2022-02-21 10:35:53 +01:00
mypy.ini iotests/297: Split mypy configuration out into mypy.ini 2021-11-01 11:54:59 -04:00
nbd-fault-injector.py
pylintrc iotests/297: Move pylint config into pylintrc 2021-11-01 11:54:59 -04:00
qcow2_format.py
qcow2.py
qed.py
README
testenv.py check-block: replace -makecheck with TAP output 2022-01-28 11:13:33 +01:00
testrunner.py tests/qemu-iotests/testrunner: Print diff to stderr in TAP mode 2022-02-16 15:01:33 +01: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.