Eric Blake de38b5005e qemu-img: Saner printing of large file sizes
Disk sizes close to INT64_MAX cause overflow, for some pretty
ridiculous output:

  $ ./nbdkit -U - memory size=$((2**63 - 512)) --run 'qemu-img info $nbd'
  image: nbd+unix://?socket=/tmp/nbdkitHSAzNz/socket
  file format: raw
  virtual size: -8388607T (9223372036854775296 bytes)
  disk size: unavailable

But there's no reason to have two separate implementations of integer
to human-readable abbreviation, where one has overflow and stops at
'T', while the other avoids overflow and goes all the way to 'E'. With
this patch, the output now claims 8EiB instead of -8388607T, which
really is the correct rounding of largest file size supported by qemu
(we could go 511 bytes larger if we used byte-accurate sizing instead
of rounding up to the next sector boundary, but that wouldn't change
the human-readable result).

Quite a few iotests need updates to expected output to match.

Reported-by: Richard W.M. Jones <rjones@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Tested-by: Richard W.M. Jones <rjones@redhat.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Tested-by: Max Reitz <mreitz@redhat.com>
2019-04-30 15:29:00 +02:00
..
2018-01-23 12:34:43 +01:00
2017-07-11 17:45:02 +02:00
045
2019-02-25 15:11:28 +01:00
051
2019-03-19 15:51:31 +01:00
055
2018-03-19 12:01:24 +01:00
2018-03-19 12:01:24 +01:00
2015-01-23 12:41:32 -05:00
2017-05-11 12:08:24 +02:00
2017-09-06 15:19:01 +01:00
2018-01-23 12:34:42 +01:00
2018-06-11 16:18:45 +02:00
2017-10-26 15:01:14 +02:00
129
2018-03-09 15:40:07 +01:00
132
2018-03-09 15:40:07 +01:00
2016-05-19 16:45:31 +02:00
139
2019-03-08 12:26:45 +01:00
2018-05-23 14:30:51 +02:00
147
2019-01-31 00:44:55 +01:00
148
2018-03-09 15:40:07 +01:00
2018-06-18 17:05:17 +02:00
152
2018-03-09 15:40:07 +01:00
155
2018-05-23 14:30:51 +02:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
2017-09-26 15:00:32 +02:00
169
2018-10-30 21:13:54 -03:00
2016-09-20 22:10:57 +02:00
2017-09-18 19:43:38 -04:00
2017-02-12 00:47:42 +01:00
194
2018-04-10 16:33:43 +02:00
199
2018-03-13 17:06:32 -04:00
209
2018-03-13 15:44:09 -05:00
210
2019-02-25 15:11:27 +01:00
211
2019-02-25 15:11:28 +01:00
212
2019-02-25 15:11:27 +01:00
213
2019-02-25 15:11:27 +01:00
2018-05-15 16:15:21 +02:00
218
2018-10-26 17:17:32 +02:00
219
2018-06-11 16:18:45 +02:00
222
2018-07-10 11:55:11 +02:00
223
2019-03-09 20:55:44 +00:00
228
2019-02-25 15:11:27 +01:00
2019-02-25 15:11:27 +01:00
232
2019-03-19 15:49:29 +01:00
2019-03-19 15:49:29 +01:00
233
2019-03-09 20:55:44 +00:00
234
2019-02-01 13:46:44 +01:00
2019-02-01 13:46:44 +01:00
237
2019-02-25 15:11:27 +01:00
238
2019-03-08 12:26:45 +01:00
239
2019-02-01 13:46:44 +01:00
2019-02-01 13:46:44 +01:00
245
2019-04-12 18:03:01 +02:00
247
2019-03-19 15:49:29 +01:00
2019-03-19 15:49:29 +01:00
2019-03-08 12:26:45 +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.