qemu-e2k/tests/qemu-iotests
Vladimir Sementsov-Ogievskiy 2c060c0f50 block/vpc: return ZERO block-status when appropriate
In case when get_image_offset() returns -1, we do zero out the
corresponding chunk of qiov. So, this should be reported as ZERO.

Note that this changes visible output of "qemu-img map --output=json"
and "qemu-io -c map" commands. For qemu-img map, the change is obvious:
we just mark as zero what is really zero. For qemu-io it's less
obvious: what was unallocated now is allocated.

There is an inconsistency in understanding of unallocated regions in
Qemu: backing-supporting format-drivers return 0 block-status to report
go-to-backing logic for this area. Some protocol-drivers (iscsi) return
0 to report fs-unallocated-non-zero status (i.e., don't occupy space on
disk, read result is undefined).

BDRV_BLOCK_ALLOCATED is defined as something more close to
go-to-backing logic. Still it is calculated as ZERO | DATA, so 0 from
iscsi is treated as unallocated. It doesn't influence backing-chain
behavior, as iscsi can't have backing file. But it does influence
"qemu-io -c map".

We should solve this inconsistency at some future point. Now, let's
just make backing-not-supporting format drivers (vdi in the previous
patch and vpc now) to behave more like backing-supporting drivers
and not report 0 block-status. More over, returning ZERO status is
absolutely valid thing, and again, corresponds to how the other
format-drivers (backing-supporting) work.

After block-status update, it never reports 0, so setting
unallocated_blocks_are_zero doesn't make sense (as the only user of it
is bdrv_co_block_status and it checks unallocated_blocks_are_zero only
for unallocated areas). Drop it.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20200528094405.145708-5-vsementsov@virtuozzo.com>
[mreitz: qemu-io -c map as used by iotest 146 now reports everything as
         allocated; in order to make the test do something useful, we
         use qemu-img map --output=json now]
Signed-off-by: Max Reitz <mreitz@redhat.com>
2020-07-06 10:32:38 +02:00
..
001
2020-05-05 13:17:36 +02:00
2018-01-23 12:34:43 +01:00
2019-10-14 17:12:48 +02:00
2017-07-11 17:45:02 +02:00
2019-07-30 12:25:43 +02:00
052
2020-05-05 13:17:36 +02:00
063
2020-01-06 13:43:07 +01:00
2020-01-06 13:43:07 +01:00
2015-01-23 12:41:32 -05:00
065
2020-05-13 14:20:31 +02:00
2017-05-11 12:08:24 +02:00
2017-09-06 15:19:01 +01:00
079
2020-01-06 13:43:07 +01:00
080
2020-05-13 14:20:31 +02:00
082
2020-05-08 13:26:35 +02:00
083
2019-10-28 11:22:31 +01:00
085
2020-03-24 11:57:38 +01:00
087
2020-07-06 08:49:28 +02:00
091
2020-05-08 13:26:35 +02:00
2020-01-06 13:43:07 +01:00
106
2020-01-06 13:43:07 +01:00
110
2020-01-06 13:43:07 +01:00
2020-01-06 13:43:07 +01:00
111
2020-01-06 13:43:07 +01:00
2018-06-11 16:18:45 +02:00
115
2020-01-06 13:43:07 +01:00
2019-08-16 10:25:16 +02:00
134
2020-05-05 13:17:36 +02:00
2016-05-19 16:45:31 +02:00
137
2020-01-06 13:43:07 +01:00
2020-01-06 13:43:07 +01:00
140
2019-10-28 11:22:31 +01:00
147
2020-02-20 16:43:42 +01:00
148
2020-05-08 13:26:35 +02:00
149
2020-05-05 13:17:36 +02:00
2020-05-05 13:17:36 +02:00
2020-03-11 15:54:38 +01:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
162
2019-10-10 12:13:23 +02:00
2019-10-10 12:13:23 +02:00
2017-09-26 15:00:32 +02:00
2016-09-20 22:10:57 +02:00
2020-06-23 16:07:07 +02:00
174
2020-01-06 13:43:07 +01:00
2017-02-12 00:47:42 +01:00
175
2020-01-06 13:43:07 +01:00
178
2020-07-06 08:49:28 +02:00
2020-05-28 13:15:23 -05:00
188
2020-07-06 08:49:28 +02:00
189
2020-07-06 08:49:28 +02:00
192
2019-10-28 11:22:31 +01:00
198
2020-07-06 08:49:28 +02:00
202
2020-05-05 13:17:36 +02:00
203
2020-05-05 13:17:36 +02:00
206
2020-07-06 08:49:28 +02:00
207
2020-05-05 13:17:36 +02:00
2019-06-24 16:01:04 +02:00
208
2020-05-05 13:17:36 +02:00
209
2020-05-05 13:17:36 +02:00
210
2020-05-05 13:17:36 +02:00
211
2020-05-05 13:17:36 +02:00
212
2020-05-05 13:17:36 +02:00
213
2020-05-05 13:17:36 +02:00
216
2020-05-05 13:17:36 +02:00
218
2020-05-05 13:17:36 +02:00
219
2020-05-05 13:17:36 +02:00
222
2020-05-05 13:17:36 +02:00
224
2020-05-05 13:17:36 +02:00
2019-10-10 10:56:18 +02:00
228
2020-05-05 13:17:36 +02:00
2019-02-25 15:11:27 +01:00
229
2020-06-17 16:21:21 +02:00
2019-03-19 15:49:29 +01:00
233
2019-06-13 08:50:47 -05:00
234
2020-05-05 13:17:36 +02:00
2019-02-01 13:46:44 +01:00
235
2020-05-05 13:17:36 +02:00
236
2020-05-05 13:17:36 +02:00
237
2020-05-05 13:17:36 +02:00
238
2020-05-05 13:17:36 +02:00
2019-02-01 13:46:44 +01:00
240
2019-10-28 11:22:31 +01:00
242
2020-05-05 13:17:36 +02:00
246
2020-05-05 13:17:36 +02:00
2019-03-19 15:49:29 +01:00
248
2020-05-05 13:17:36 +02:00
2019-06-04 16:55:58 +02:00
254
2020-05-05 13:17:36 +02:00
2019-08-16 16:28:03 -04:00
255
2020-05-05 13:17:36 +02:00
256
2020-05-05 13:17:36 +02:00
258
2020-05-05 13:17:36 +02:00
260
2020-05-05 13:17:36 +02:00
262
2020-05-05 13:17:36 +02:00
263
2020-07-06 08:49:28 +02:00
264
2020-05-05 13:17:36 +02:00
2019-10-22 20:51:31 -05:00
265
2020-01-06 13:43:07 +01:00
274
2020-05-05 13:17:36 +02:00
277
2020-05-05 13:17:36 +02:00
2019-11-18 16:01:31 -06:00
279
2020-03-24 11:57:38 +01:00
280
2020-05-05 13:17:36 +02:00
284
2020-07-06 08:49:28 +02:00
286
2020-02-20 16:43:42 +01:00
291
2020-06-24 10:00:04 +02:00
292
2020-06-17 16:21:21 +02:00
295
2020-07-06 08:49:28 +02:00
2020-07-06 08:49:28 +02:00
296
2020-07-06 08:49:28 +02:00
2020-07-06 08:49:28 +02:00
297
2020-05-18 19:05:25 +02:00
2020-07-06 08:49:28 +02:00
2020-07-06 08:49:28 +02:00
2020-07-06 08:49:28 +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.