When a backing chain element specifies a parent in a format not known to libvirt
we'd fail to start the VM as the chain would appear broken.
To prevent this happening introduce a new disk type to collect
unknow format specs and avoid startup failures with such disk type.
Peter Krempa (5):
util: storage: Convert disk locality check to switch statement
conf: Introduce raw disk string passthrough
conf: Mark backing chain ending with "raw" volume as broken
tests: Add tests for disk type 'raw'
utils: storage: Fall back to "raw" disk on backing store parse
failure
docs/schemas/domaincommon.rng | 14 ++++
src/conf/domain_conf.c | 12 ++-
src/qemu/qemu_command.c | 1 +
src/qemu/qemu_driver.c | 4 +
src/storage/storage_driver.c | 8 ++
src/util/virstoragefile.c | 35 +++++++-
src/util/virstoragefile.h | 1 +
.../qemuxml2argv-disk-backing-chains-raw.xml | 94 +++++++++++++++++++++
.../qemuxml2argv-disk-virtio-raw.args | 9 ++
.../qemuxml2argv-disk-virtio-raw.xml | 45 ++++++++++
tests/qemuxml2argvtest.c | 1 +
...muxml2xmlout-disk-backing-chains-raw-active.xml | 95 ++++++++++++++++++++++
...xml2xmlout-disk-backing-chains-raw-inactive.xml | 59 ++++++++++++++
tests/qemuxml2xmltest.c | 2 +
14 files changed, 375 insertions(+), 5 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-backing-chains-raw.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-raw.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-virtio-raw.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-backing-chains-raw-active.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-backing-chains-raw-inactive.xml
--
2.0.2