diff mbox

[v8,15/15] iotests: Add "qemu-img map" test for VMDK extents

Message ID 1453689887-2567-16-git-send-email-famz@redhat.com
State New
Headers show

Commit Message

Fam Zheng Jan. 25, 2016, 2:44 a.m. UTC
Signed-off-by: Fam Zheng <famz@redhat.com>
---
 tests/qemu-iotests/059     | 10 ++++++++++
 tests/qemu-iotests/059.out | 26 ++++++++++++++++++++++++++
 2 files changed, 36 insertions(+)

Comments

Max Reitz Jan. 25, 2016, 2:11 p.m. UTC | #1
On 25.01.2016 03:44, Fam Zheng wrote:
> Signed-off-by: Fam Zheng <famz@redhat.com>
> ---
>  tests/qemu-iotests/059     | 10 ++++++++++
>  tests/qemu-iotests/059.out | 26 ++++++++++++++++++++++++++
>  2 files changed, 36 insertions(+)
> 
> diff --git a/tests/qemu-iotests/059 b/tests/qemu-iotests/059
> index 0ded0c3..0332bbb 100755
> --- a/tests/qemu-iotests/059
> +++ b/tests/qemu-iotests/059
> @@ -133,6 +133,16 @@ $QEMU_IO -c "write -P 0xa 900G 512" "$TEST_IMG" | _filter_qemu_io
>  $QEMU_IO -c "read -v 900G 1024" "$TEST_IMG" | _filter_qemu_io
>  
>  echo
> +echo "=== Testing qemu-img map on extents ==="
> +for fmt in monolithicSparse twoGbMaxExtentSparse; do
> +    IMGOPTS="subformat=$fmt" _make_test_img 31G
> +    $QEMU_IO -c "write 65024 1k" "$TEST_IMG" | _filter_qemu_io
> +    $QEMU_IO -c "write 2147483136 1k" "$TEST_IMG" | _filter_qemu_io
> +    $QEMU_IO -c "write 5G 1k" "$TEST_IMG" | _filter_qemu_io
> +    $QEMU_IMG map "$TEST_IMG" | _filter_testdir
> +done
> +
> +echo
>  echo "=== Testing afl image with a very large capacity ==="
>  _use_sample_img afl9.vmdk.bz2
>  _img_info
> diff --git a/tests/qemu-iotests/059.out b/tests/qemu-iotests/059.out
> index 9d506cb..5e041d7 100644
> --- a/tests/qemu-iotests/059.out
> +++ b/tests/qemu-iotests/059.out
> @@ -2050,6 +2050,7 @@ wrote 512/512 bytes at offset 0
>  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>  wrote 512/512 bytes at offset 10240
>  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +qemu-img: Could not open '/home/fam/build/last/tests/qemu-iotests/scratch/t.vmdk': VMDK version 3 must be read only

I'd rather have the test fail than include this apparently wrong line
(according to
http://lists.nongnu.org/archive/html/qemu-block/2016-01/msg00710.html)
here, but I'll leave that up to you.

Reviewed-by: Max Reitz <mreitz@redhat.com>

>  
>  === Testing monolithicFlat with internally generated JSON file name ===
>  Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 subformat=monolithicFlat
> @@ -2335,6 +2336,31 @@ e1000003f0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
>  read 1024/1024 bytes at offset 966367641600
>  1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>  
> +=== Testing qemu-img map on extents ===
> +Formatting 'TEST_DIR/iotest-version3.IMGFMT', fmt=IMGFMT size=33285996544 subformat=monolithicSparse
> +wrote 1024/1024 bytes at offset 65024
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +wrote 1024/1024 bytes at offset 2147483136
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +wrote 1024/1024 bytes at offset 5368709120
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +Offset          Length          Mapped to       File
> +0               0x20000         0x3f0000        TEST_DIR/iotest-version3.vmdk
> +0x7fff0000      0x20000         0x410000        TEST_DIR/iotest-version3.vmdk
> +0x140000000     0x10000         0x430000        TEST_DIR/iotest-version3.vmdk
> +Formatting 'TEST_DIR/iotest-version3.IMGFMT', fmt=IMGFMT size=33285996544 subformat=twoGbMaxExtentSparse
> +wrote 1024/1024 bytes at offset 65024
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +wrote 1024/1024 bytes at offset 2147483136
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +wrote 1024/1024 bytes at offset 5368709120
> +1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> +Offset          Length          Mapped to       File
> +0               0x20000         0x50000         TEST_DIR/iotest-version3-s001.vmdk
> +0x7fff0000      0x10000         0x70000         TEST_DIR/iotest-version3-s001.vmdk
> +0x80000000      0x10000         0x50000         TEST_DIR/iotest-version3-s002.vmdk
> +0x140000000     0x10000         0x50000         TEST_DIR/iotest-version3-s003.vmdk
> +
>  === Testing afl image with a very large capacity ===
>  qemu-img: Can't get size of device 'image': File too large
>  *** done
>
Max Reitz Jan. 25, 2016, 2:17 p.m. UTC | #2
On 25.01.2016 15:11, Max Reitz wrote:
> On 25.01.2016 03:44, Fam Zheng wrote:
>> Signed-off-by: Fam Zheng <famz@redhat.com>
>> ---
>>  tests/qemu-iotests/059     | 10 ++++++++++
>>  tests/qemu-iotests/059.out | 26 ++++++++++++++++++++++++++
>>  2 files changed, 36 insertions(+)
>>
>> diff --git a/tests/qemu-iotests/059 b/tests/qemu-iotests/059
>> index 0ded0c3..0332bbb 100755
>> --- a/tests/qemu-iotests/059
>> +++ b/tests/qemu-iotests/059
>> @@ -133,6 +133,16 @@ $QEMU_IO -c "write -P 0xa 900G 512" "$TEST_IMG" | _filter_qemu_io
>>  $QEMU_IO -c "read -v 900G 1024" "$TEST_IMG" | _filter_qemu_io
>>  
>>  echo
>> +echo "=== Testing qemu-img map on extents ==="
>> +for fmt in monolithicSparse twoGbMaxExtentSparse; do
>> +    IMGOPTS="subformat=$fmt" _make_test_img 31G
>> +    $QEMU_IO -c "write 65024 1k" "$TEST_IMG" | _filter_qemu_io
>> +    $QEMU_IO -c "write 2147483136 1k" "$TEST_IMG" | _filter_qemu_io
>> +    $QEMU_IO -c "write 5G 1k" "$TEST_IMG" | _filter_qemu_io
>> +    $QEMU_IMG map "$TEST_IMG" | _filter_testdir
>> +done
>> +
>> +echo
>>  echo "=== Testing afl image with a very large capacity ==="
>>  _use_sample_img afl9.vmdk.bz2
>>  _img_info
>> diff --git a/tests/qemu-iotests/059.out b/tests/qemu-iotests/059.out
>> index 9d506cb..5e041d7 100644
>> --- a/tests/qemu-iotests/059.out
>> +++ b/tests/qemu-iotests/059.out
>> @@ -2050,6 +2050,7 @@ wrote 512/512 bytes at offset 0
>>  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>>  wrote 512/512 bytes at offset 10240
>>  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>> +qemu-img: Could not open '/home/fam/build/last/tests/qemu-iotests/scratch/t.vmdk': VMDK version 3 must be read only

...and I just noticed that my home directory is called /home/maxx and
not /home/fam. :-)

> I'd rather have the test fail than include this apparently wrong line
> (according to
> http://lists.nongnu.org/archive/html/qemu-block/2016-01/msg00710.html)
> here, but I'll leave that up to you.
> 
> Reviewed-by: Max Reitz <mreitz@redhat.com>

So I'll have to revoke this R-b.

Max
Fam Zheng Jan. 26, 2016, 3:45 a.m. UTC | #3
On Mon, 01/25 15:11, Max Reitz wrote:
> On 25.01.2016 03:44, Fam Zheng wrote:
> > Signed-off-by: Fam Zheng <famz@redhat.com>
> > ---
> >  tests/qemu-iotests/059     | 10 ++++++++++
> >  tests/qemu-iotests/059.out | 26 ++++++++++++++++++++++++++
> >  2 files changed, 36 insertions(+)
> > 
> > diff --git a/tests/qemu-iotests/059 b/tests/qemu-iotests/059
> > index 0ded0c3..0332bbb 100755
> > --- a/tests/qemu-iotests/059
> > +++ b/tests/qemu-iotests/059
> > @@ -133,6 +133,16 @@ $QEMU_IO -c "write -P 0xa 900G 512" "$TEST_IMG" | _filter_qemu_io
> >  $QEMU_IO -c "read -v 900G 1024" "$TEST_IMG" | _filter_qemu_io
> >  
> >  echo
> > +echo "=== Testing qemu-img map on extents ==="
> > +for fmt in monolithicSparse twoGbMaxExtentSparse; do
> > +    IMGOPTS="subformat=$fmt" _make_test_img 31G
> > +    $QEMU_IO -c "write 65024 1k" "$TEST_IMG" | _filter_qemu_io
> > +    $QEMU_IO -c "write 2147483136 1k" "$TEST_IMG" | _filter_qemu_io
> > +    $QEMU_IO -c "write 5G 1k" "$TEST_IMG" | _filter_qemu_io
> > +    $QEMU_IMG map "$TEST_IMG" | _filter_testdir
> > +done
> > +
> > +echo
> >  echo "=== Testing afl image with a very large capacity ==="
> >  _use_sample_img afl9.vmdk.bz2
> >  _img_info
> > diff --git a/tests/qemu-iotests/059.out b/tests/qemu-iotests/059.out
> > index 9d506cb..5e041d7 100644
> > --- a/tests/qemu-iotests/059.out
> > +++ b/tests/qemu-iotests/059.out
> > @@ -2050,6 +2050,7 @@ wrote 512/512 bytes at offset 0
> >  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> >  wrote 512/512 bytes at offset 10240
> >  512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> > +qemu-img: Could not open '/home/fam/build/last/tests/qemu-iotests/scratch/t.vmdk': VMDK version 3 must be read only
> 
> I'd rather have the test fail than include this apparently wrong line
> (according to
> http://lists.nongnu.org/archive/html/qemu-block/2016-01/msg00710.html)
> here, but I'll leave that up to you.

It snuck in because of copy&paste when updating 059.out, I'll fix.

Fam
diff mbox

Patch

diff --git a/tests/qemu-iotests/059 b/tests/qemu-iotests/059
index 0ded0c3..0332bbb 100755
--- a/tests/qemu-iotests/059
+++ b/tests/qemu-iotests/059
@@ -133,6 +133,16 @@  $QEMU_IO -c "write -P 0xa 900G 512" "$TEST_IMG" | _filter_qemu_io
 $QEMU_IO -c "read -v 900G 1024" "$TEST_IMG" | _filter_qemu_io
 
 echo
+echo "=== Testing qemu-img map on extents ==="
+for fmt in monolithicSparse twoGbMaxExtentSparse; do
+    IMGOPTS="subformat=$fmt" _make_test_img 31G
+    $QEMU_IO -c "write 65024 1k" "$TEST_IMG" | _filter_qemu_io
+    $QEMU_IO -c "write 2147483136 1k" "$TEST_IMG" | _filter_qemu_io
+    $QEMU_IO -c "write 5G 1k" "$TEST_IMG" | _filter_qemu_io
+    $QEMU_IMG map "$TEST_IMG" | _filter_testdir
+done
+
+echo
 echo "=== Testing afl image with a very large capacity ==="
 _use_sample_img afl9.vmdk.bz2
 _img_info
diff --git a/tests/qemu-iotests/059.out b/tests/qemu-iotests/059.out
index 9d506cb..5e041d7 100644
--- a/tests/qemu-iotests/059.out
+++ b/tests/qemu-iotests/059.out
@@ -2050,6 +2050,7 @@  wrote 512/512 bytes at offset 0
 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 wrote 512/512 bytes at offset 10240
 512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+qemu-img: Could not open '/home/fam/build/last/tests/qemu-iotests/scratch/t.vmdk': VMDK version 3 must be read only
 
 === Testing monolithicFlat with internally generated JSON file name ===
 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 subformat=monolithicFlat
@@ -2335,6 +2336,31 @@  e1000003f0:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
 read 1024/1024 bytes at offset 966367641600
 1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 
+=== Testing qemu-img map on extents ===
+Formatting 'TEST_DIR/iotest-version3.IMGFMT', fmt=IMGFMT size=33285996544 subformat=monolithicSparse
+wrote 1024/1024 bytes at offset 65024
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+wrote 1024/1024 bytes at offset 2147483136
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+wrote 1024/1024 bytes at offset 5368709120
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+Offset          Length          Mapped to       File
+0               0x20000         0x3f0000        TEST_DIR/iotest-version3.vmdk
+0x7fff0000      0x20000         0x410000        TEST_DIR/iotest-version3.vmdk
+0x140000000     0x10000         0x430000        TEST_DIR/iotest-version3.vmdk
+Formatting 'TEST_DIR/iotest-version3.IMGFMT', fmt=IMGFMT size=33285996544 subformat=twoGbMaxExtentSparse
+wrote 1024/1024 bytes at offset 65024
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+wrote 1024/1024 bytes at offset 2147483136
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+wrote 1024/1024 bytes at offset 5368709120
+1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+Offset          Length          Mapped to       File
+0               0x20000         0x50000         TEST_DIR/iotest-version3-s001.vmdk
+0x7fff0000      0x10000         0x70000         TEST_DIR/iotest-version3-s001.vmdk
+0x80000000      0x10000         0x50000         TEST_DIR/iotest-version3-s002.vmdk
+0x140000000     0x10000         0x50000         TEST_DIR/iotest-version3-s003.vmdk
+
 === Testing afl image with a very large capacity ===
 qemu-img: Can't get size of device 'image': File too large
 *** done