]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
libxl: adopt to VIR_DRV_SUPPORTS_FEATURE return -1
authorNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
Thu, 17 Dec 2020 12:27:41 +0000 (15:27 +0300)
committerNick Shyrokovskiy <nshyrokovskiy@gmail.com>
Wed, 6 Jan 2021 14:10:05 +0000 (17:10 +0300)
Otherwise in some places we can mistakenly report 'unsupported' error instead
of root cause. So let's handle root cause explicitly from the macro.

Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
src/libxl/libxl_migration.c

index 6dc6812ee7c80ad71f5ce97c86a272c75fe40075..2925aaaa6ddd68ca16f1d71577125bc1248b85e7 100644 (file)
@@ -1146,7 +1146,7 @@ libxlDomainMigrationSrcPerformP2P(libxlDriverPrivatePtr driver,
                                   unsigned int flags)
 {
     int ret = -1;
-    bool useParams;
+    int useParams;
     virConnectPtr dconn = NULL;
     virErrorPtr orig_err = NULL;
     libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver);
@@ -1171,9 +1171,11 @@ libxlDomainMigrationSrcPerformP2P(libxlDriverPrivatePtr driver,
                                          VIR_DRV_FEATURE_MIGRATION_PARAMS);
     virObjectLock(vm);
 
-    if (!useParams) {
-        virReportError(VIR_ERR_OPERATION_FAILED, "%s",
-                       _("Destination libvirt does not support migration with extensible parameters"));
+    if (useParams <= 0) {
+        if (useParams == 0)
+            virReportError(VIR_ERR_OPERATION_FAILED, "%s",
+                           _("Destination libvirt does not support migration"
+                             " with extensible parameters"));
         goto cleanup;
     }