[libvirt] [PATCH 00/14] Fixes, cleanups and qcow2+luks support (blockdev-add saga)

Peter Krempa pkrempa at redhat.com
Thu Mar 29 11:50:57 UTC 2018


This is a collection of patches from my blockdev-add branch which are
basically ready.

First few patches are refactors and cleanups which should be justified
enough by itself even if the code which will use some of them was not
posted yet.

Other few patches add checks which will reject configurations which qemu
would not accept anyways.

The last part adds qcow2+luks support since adding it was rather
trivial. Obviously as with raw+luks disks it works only without a
backing chain.

Peter Krempa (14):
  tests: utils: Tolerate NULL actual data in virTestCompareToFile
  conf: Refactor/rename virDomainDiskDefSourceParse
  conf: Don't require 'def' in virDomainDiskDefParse
  conf: Extract logic for updating 'detect_zeroes' mode
  qemu: domain: Add helper to initialize detected parts of the backing
    chain
  qemu: domain: Forbid storage type 'cow' in qemu
  qemu: domain: Forbid VIR_STORAGE_FILE_DIR as a disk format
  qemu: domain: Forbid VIR_STORAGE_FILE_ISO as a disk format
  qemu: caps: Add capability for LUKS encrypted qcow2 image support
  qemu: domain: Validate support for LUKS encryption of QCOW2 images
  qemu: command: Add support for qcow2 + luks
  tests: qemu: Test QCOW2 + LUKS support
  tests: qemuxml2argv: Allow testing of config processed at startup
  qemu: domain: Move initialization of disk cachemode for <shareable>
    disks

 src/conf/domain_conf.c                             |  58 +++++++----
 src/conf/domain_conf.h                             |  11 +-
 src/libvirt_private.syms                           |   3 +-
 src/qemu/qemu_capabilities.c                       |   2 +
 src/qemu/qemu_capabilities.h                       |   1 +
 src/qemu/qemu_command.c                            |  33 +++---
 src/qemu/qemu_domain.c                             | 111 +++++++++++++++++++--
 src/qemu/qemu_domain.h                             |   6 ++
 src/qemu/qemu_driver.c                             |   9 +-
 tests/Makefile.am                                  |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.aarch64.xml |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.ppc64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.s390x.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.10.0.x86_64.xml  |   1 +
 tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml |   1 +
 tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml   |   1 +
 tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml  |   1 +
 tests/qemuxml2argvdata/disk-drive-fmt-cow.xml      |  27 +++++
 tests/qemuxml2argvdata/disk-drive-fmt-dir.xml      |  27 +++++
 tests/qemuxml2argvdata/disk-drive-fmt-iso.xml      |  27 +++++
 .../qemuxml2argvdata/luks-disks-source-qcow2.args  |  66 ++++++++++++
 tests/qemuxml2argvdata/luks-disks-source-qcow2.xml |  81 +++++++++++++++
 tests/qemuxml2argvtest.c                           |  47 ++++++++-
 .../disk-drive-shared.xml                          |  56 +++++++++++
 tests/testutils.c                                  |   4 +-
 27 files changed, 521 insertions(+), 58 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/disk-drive-fmt-cow.xml
 create mode 100644 tests/qemuxml2argvdata/disk-drive-fmt-dir.xml
 create mode 100644 tests/qemuxml2argvdata/disk-drive-fmt-iso.xml
 create mode 100644 tests/qemuxml2argvdata/luks-disks-source-qcow2.args
 create mode 100644 tests/qemuxml2argvdata/luks-disks-source-qcow2.xml
 create mode 100644 tests/qemuxml2startupxmloutdata/disk-drive-shared.xml

-- 
2.16.2




More information about the libvir-list mailing list