mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 05:35:25 +00:00
conf: add data-file feature and related fields to virStorageSource
The 'data-file' is a qcow2 feature which allows storing the actual data outside of the qcow2 image. Signed-off-by: Nikolai Barybin <nikolai.barybin@virtuozzo.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
2cb6cb05d4
commit
64627d5645
@ -829,6 +829,7 @@ virStorageSourceCopy(const virStorageSource *src,
|
||||
def->relPath = g_strdup(src->relPath);
|
||||
def->backingStoreRaw = g_strdup(src->backingStoreRaw);
|
||||
def->backingStoreRawFormat = src->backingStoreRawFormat;
|
||||
def->dataFileRaw = g_strdup(src->dataFileRaw);
|
||||
def->snapshot = g_strdup(src->snapshot);
|
||||
def->configFile = g_strdup(src->configFile);
|
||||
def->nodenameformat = g_strdup(src->nodenameformat);
|
||||
@ -894,6 +895,12 @@ virStorageSourceCopy(const virStorageSource *src,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (src->dataFileStore) {
|
||||
if (!(def->dataFileStore = virStorageSourceCopy(src->dataFileStore,
|
||||
false)))
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (src->fdtuple)
|
||||
def->fdtuple = g_object_ref(src->fdtuple);
|
||||
|
||||
@ -1174,6 +1181,9 @@ virStorageSourceClear(virStorageSource *def)
|
||||
VIR_FREE(def->nodenamestorage);
|
||||
VIR_FREE(def->nodenameformat);
|
||||
|
||||
VIR_FREE(def->dataFileRaw);
|
||||
g_clear_pointer(&def->dataFileStore, virObjectUnref);
|
||||
|
||||
virStorageSourceBackingStoreClear(def);
|
||||
|
||||
VIR_FREE(def->tlsAlias);
|
||||
|
@ -359,6 +359,9 @@ struct _virStorageSource {
|
||||
/* backing chain of the storage source */
|
||||
virStorageSource *backingStore;
|
||||
|
||||
/* qcow2 data file source */
|
||||
virStorageSource *dataFileStore;
|
||||
|
||||
/* metadata for storage driver access to remote and local volumes */
|
||||
void *drv;
|
||||
|
||||
@ -369,6 +372,7 @@ struct _virStorageSource {
|
||||
/* Name of the child backing store recorded in metadata of the
|
||||
* current file. */
|
||||
char *backingStoreRaw;
|
||||
char *dataFileRaw;
|
||||
virStorageFileFormat backingStoreRawFormat;
|
||||
|
||||
/* metadata that allows identifying given storage source */
|
||||
|
Loading…
Reference in New Issue
Block a user