libvirt/xen-sysctl-v7.patch

39 lines
1.4 KiB
Diff

commit 3bd3d6b0bf9b8f054a8b31c716f03e2d0dd8751f
Author: Jim Fehlig <jfehlig@novell.com>
Date: Wed Jan 27 10:56:18 2010 -0700
Support Xen 4.0 sysctl version 7
xen-unstable c/s 20762 bumped XEN_SYSCTL_INTERFACE_VERSION to 7. The
interface change does not affect libvirt, other than xenHypervisorInit()
failing since version 7 is not tried.
The attached patch accommodates the upcoming Xen 4.0 release by checking
for XEN_SYSCTL_INTERFACE_VERSION 7. If found, it sets
XEN_DOMCTL_INTERFACE_VERSION to 6, which is also new to Xen 4.0.
diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c
index 6d8accc..7f39095 100644
--- a/src/xen/xen_hypervisor.c
+++ b/src/xen/xen_hypervisor.c
@@ -2100,12 +2100,14 @@ xenHypervisorInit(void)
DEBUG0("Using hypervisor call v2, sys ver6 dom ver5\n");
goto done;
}
- /* Xen 4.0 */
+ }
+
+ /* Xen 4.0 */
+ sys_interface_version = 7; /* XEN_SYSCTL_INTERFACE_VERSION */
+ if (virXen_getdomaininfo(fd, 0, &info) == 1) {
dom_interface_version = 6; /* XEN_DOMCTL_INTERFACE_VERSION */
- if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
- DEBUG0("Using hypervisor call v2, sys ver6 dom ver6\n");
- goto done;
- }
+ DEBUG0("Using hypervisor call v2, sys ver7 dom ver6\n");
+ goto done;
}
hypervisor_version = 1;