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 <olaf(a)aepfle.de>
---
src/libxl/libxl_driver.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
Reviewed-by: Jim Fehlig <jfehlig(a)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);