On 5/3/21 4:56 AM, Olaf Hering wrote:
xc_get_max_cpus from Xen version 4.3 may return 0 in case xc_physinfo
fails. This has been fixed in Xen 4.4. Remove the obsolete result check
from libvirt. Just convert libxl error codes to plain -1.

Signed-off-by: Olaf Hering <o...@aepfle.de>
---
  src/libxl/libxl_driver.c | 6 +-----
  1 file changed, 1 insertion(+), 5 deletions(-)

Reviewed-by: Jim Fehlig <jfeh...@suse.com>

I'll push 1 and 2 independent of the others.

Jim


diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index cf3ee4db3d..99a170ff2a 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -972,11 +972,7 @@ libxlConnectGetMaxVcpus(virConnectPtr conn, const char 
*type G_GNUC_UNUSED)
cfg = libxlDriverConfigGet(driver);
      ret = libxl_get_max_cpus(cfg->ctx);
-    /* On failure, libxl_get_max_cpus() will return ERROR_FAIL from Xen 4.4
-     * onward, but it ever returning 0 is obviously wrong too (and it is
-     * what happens, on failure, on Xen 4.3 and earlier). Therefore, a 'less
-     * or equal' is the catchall we want. */
-    if (ret <= 0)
+    if (ret < 0)
          ret = -1;
virObjectUnref(cfg);


Reply via email to