qemuBlockStorageSourceCreateGetFormatPropsQcow2: Add support for 'extended-l2' feature

Allow creating the qcow2 with the new subcluster format if required.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2021-12-16 12:46:51 +01:00
parent 58f5597a77
commit df0e867447

View File

@ -2441,18 +2441,23 @@ qemuBlockStorageSourceCreateGetFormatPropsQcow2(virStorageSource *src,
{
g_autoptr(virJSONValue) qcow2props = NULL;
const char *qcow2version = NULL;
bool extendedL2 = false;
if (STREQ_NULLABLE(src->compat, "0.10"))
qcow2version = "v2";
else if (STREQ_NULLABLE(src->compat, "1.1"))
qcow2version = "v3";
if (src->features)
extendedL2 = virBitmapIsBitSet(src->features, VIR_STORAGE_FILE_FEATURE_EXTENDED_L2);
if (virJSONValueObjectAdd(&qcow2props,
"s:driver", "qcow2",
"s:file", src->nodestorage,
"U:size", src->capacity,
"S:version", qcow2version,
"P:cluster-size", src->clusterSize,
"B:extended-l2", extendedL2,
NULL) < 0)
return -1;