[libvirt] [PATCH 0/8 v2] Glue domain and storage

Osier Yang jyang at redhat.com
Thu Apr 4 19:37:54 UTC 2013


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

-- 
1.8.1.4




More information about the libvir-list mailing list