On 12/14/2016 09:15 AM, Cédric Bosdonnat wrote:
If libxl has QED disk format support, then pass the feature
over to the user.
---
src/libxl/libxl_conf.c | 11 +++++++++++
src/xenconfig/xen_xl.c | 6 ++++++
2 files changed, 17 insertions(+)
diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index 288712f65..02945ae1a 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -745,6 +745,12 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk
*x_disk)
x_disk->format = LIBXL_DISK_FORMAT_RAW;
x_disk->backend = LIBXL_DISK_BACKEND_TAP;
break;
+#ifdef LIBXL_HAVE_QED
+ case VIR_STORAGE_FILE_QED:
+ x_disk->format = LIBXL_DISK_FORMAT_QED;
+ x_disk->backend = LIBXL_DISK_BACKEND_QDISK;
+ break;
+#endif
default:
virReportError(VIR_ERR_INTERNAL_ERROR,
_("libxenlight does not support disk format %s
"
@@ -762,6 +768,11 @@ libxlMakeDisk(virDomainDiskDefPtr l_disk, libxl_device_disk
*x_disk)
case VIR_STORAGE_FILE_QCOW2:
x_disk->format = LIBXL_DISK_FORMAT_QCOW2;
break;
+#ifdef LIBXL_HAVE_QED
+ case VIR_STORAGE_FILE_QED:
+ x_disk->format = LIBXL_DISK_FORMAT_QED;
+ break;
+#endif
case VIR_STORAGE_FILE_VHD:
x_disk->format = LIBXL_DISK_FORMAT_VHD;
break;
diff --git a/src/xenconfig/xen_xl.c b/src/xenconfig/xen_xl.c
index f197267bb..edaa8764d 100644
--- a/src/xenconfig/xen_xl.c
+++ b/src/xenconfig/xen_xl.c
@@ -394,6 +394,12 @@ xenParseXLDisk(virConfPtr conf, virDomainDefPtr def)
case LIBXL_DISK_FORMAT_EMPTY:
break;
+#ifdef LIBXL_HAVE_QED
+ case LIBXL_DISK_FORMAT_QED:
+ disk->src->format = VIR_STORAGE_FILE_QED;
+ break;
+#endif
+
default:
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("disk image format not supported: %s"),
You'll also need to add a hunk for QED in xenFormatXLDisk(). Would be nice to
have a test added for the domXML <-> xl conversions too :-).
Regards,
Jim