mbox series

[00/14] iotests: support zstd

Message ID 20210705091549.178335-1-vsementsov@virtuozzo.com (mailing list archive)
Headers show
Series iotests: support zstd | expand

Message

Vladimir Sementsov-Ogievskiy July 5, 2021, 9:15 a.m. UTC
Hi all!

These series makes all test pass with

   IMGOPTS='compression_type=zstd'

Also, python iotests start to support IMGOPTS (they didn't before).

Also, tests works if enable compression type zstd by default. There is
no such config option currently, probably it will appear in future or
we'll go some another way (like external config file, like
/etc/qemu.conf). For now you may test with a simple patch like:

    --- a/block/qcow2.c
    +++ b/block/qcow2.c
    @@ -3539,6 +3539,11 @@ qcow2_co_create(BlockdevCreateOptions *create_options, Error **errp)
                 goto out;
             }
         }
    +
    +    if (!qcow2_opts->has_compression_type && version >= 3) {
    +        qcow2_opts->has_compression_type = true;
    +        qcow2_opts->compression_type = QCOW2_COMPRESSION_TYPE_ZSTD;
    +    }
     
         if (qcow2_opts->has_compression_type &&
             qcow2_opts->compression_type != QCOW2_COMPRESSION_TYPE_ZLIB) {

We want to use zstd compression type by default in Virtuozzo 8. This is
the first step, which is good anyway: improve iotests.

Vladimir Sementsov-Ogievskiy (14):
  iotests.py: img_info_log(): rename imgopts argument
  iotests.py: qemu_img*("create"): support
    IMGOPTS='compression_type=zstd'
  iotest 303: explicit compression type
  iotest 065: explicit compression type
  iotests.py: filter compression type out
  iotest 302: use img_info_log() helper
  qcow2: simple case support for downgrading of qcow2 images with zstd
  iotests/common.rc: _make_test_img(): smarter compressiont_type
    handling
  iotests/common.rc: introduce _qcow2_dump_header helper
  iotests: massive use _qcow2_dump_header
  iotests: bash tests: filter compression type
  iotests 60: more accurate set dirty bit in qcow2 header
  iotest 39: use _qcow2_dump_header
  iotest 214: explicit compression type

 block/qcow2.c                    | 58 ++++++++++++++++++++++++++-
 tests/qemu-iotests/031           |  6 +--
 tests/qemu-iotests/036           |  6 +--
 tests/qemu-iotests/039           | 22 +++++------
 tests/qemu-iotests/060           | 22 +++++------
 tests/qemu-iotests/060.out       |  2 +-
 tests/qemu-iotests/061           | 36 ++++++++---------
 tests/qemu-iotests/061.out       | 12 +++---
 tests/qemu-iotests/065           | 14 +++----
 tests/qemu-iotests/082.out       | 14 +++----
 tests/qemu-iotests/137           |  2 +-
 tests/qemu-iotests/198.out       |  4 +-
 tests/qemu-iotests/206.out       | 10 ++---
 tests/qemu-iotests/210           |  8 ++--
 tests/qemu-iotests/214           |  2 +-
 tests/qemu-iotests/242.out       | 10 ++---
 tests/qemu-iotests/255.out       |  8 ++--
 tests/qemu-iotests/274.out       | 68 ++++++++++++++++----------------
 tests/qemu-iotests/280.out       |  2 +-
 tests/qemu-iotests/287           |  8 ++--
 tests/qemu-iotests/302           |  3 +-
 tests/qemu-iotests/302.out       |  7 ++--
 tests/qemu-iotests/303           | 25 +++++++-----
 tests/qemu-iotests/303.out       | 30 +++++++++++++-
 tests/qemu-iotests/common.filter |  7 ++++
 tests/qemu-iotests/common.rc     | 30 ++++++++++++++
 tests/qemu-iotests/iotests.py    | 66 +++++++++++++++++++++++++++++--
 27 files changed, 333 insertions(+), 149 deletions(-)