Pushed with the nits fixed, as these patches just do additions, it's
unlikely to
introduce regression. Future patches will resolve the places which prevent
volume type disk out of the door.
Thanks for the reviewing!
Osier
On 05/04/13 03:37, Osier Yang wrote:
This is the 4th part to implement NPIV migration support [1].
Part 1 and part 2 are pushed.
Part 3 (v3: pending for review):
https://www.redhat.com/archives/libvir-list/2013-March/msg01440.html
======
This introduces new XMLs to specify the disk source with storage like
<disk type='volume' device='disk'>
<driver name='qemu' type='raw' cache='none'/>
<source pool="$pool_name" volume='$vol_name'/>
<seclabel relabel='no'/>
</source>
<target dev='vdb' bus='virtio'/>
</disk>
And before domain starting, and disk attaching/updating, the source represented
by storage is translated into the real underlying storage volume.
Future work:
* Support network volume
* Support disk backing chain?
v1 - v2:
* Invoke storage APIs to translate the source directly in qemu driver
* 1/8 in v1 is pushed.
* 2/8 in v1 is splitted (the code refactoring now is a standalone patch)
* Support shared disk for volume type disk
* Support sgio setting for volume type disk
* No network volume support in v2
RFC - v1:
* The XMLs are more simpler - only using pool name and volume
name to specify disk source.
* Support network pool (rbd, and sheepdog)
* Support startupPolicy for volume type disk
* Support seclabels for volume type disk
* Fix bugs on disk source formating
Osier Yang (8):
conf: New helper virDomainDiskSourceDefFormat to format the disk
source
Introduce new XMLs to specify disk source using libvirt storage
qemu: Translate the pool disk source when building drive string
Support startupPolicy for 'volume' disk
Support seclabels for volume type disk
qemu: Translate the pool disk source earlier
qemu: Support shareable volume type disk
qemu: Support sgio setting for volume type disk
docs/formatdomain.html.in | 28 ++-
docs/schemas/domaincommon.rng | 24 ++
src/conf/domain_conf.c | 274 ++++++++++++++-------
src/conf/domain_conf.h | 10 +
src/qemu/qemu_command.c | 32 +++
src/qemu/qemu_command.h | 1 -
src/qemu/qemu_conf.c | 68 ++++-
src/qemu/qemu_conf.h | 3 +
src/qemu/qemu_domain.c | 4 +-
src/qemu/qemu_driver.c | 16 +-
src/qemu/qemu_process.c | 14 +-
.../qemuxml2argv-disk-source-pool.xml | 37 +++
tests/qemuxml2xmltest.c | 1 +
13 files changed, 406 insertions(+), 106 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-source-pool.xml