libvirt/xen-3_2-hypercall.patch

33 lines
1.1 KiB
Diff

Index: libvirt-0.4.0/src/xen_internal.c
===================================================================
--- libvirt-0.4.0.orig/src/xen_internal.c
+++ libvirt-0.4.0/src/xen_internal.c
@@ -2006,7 +2006,7 @@ xenHypervisorInit(void)
sys_interface_version = 4; /* XEN_SYSCTL_INTERFACE_VERSION */
if (virXen_getdomaininfo(fd, 0, &info) == 1) {
- /* xen-unstable */
+ /* Fedora 8 */
dom_interface_version = 5; /* XEN_DOMCTL_INTERFACE_VERSION */
if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
#ifdef DEBUG
@@ -2016,6 +2016,18 @@ xenHypervisorInit(void)
}
}
+ sys_interface_version = 6; /* XEN_SYSCTL_INTERFACE_VERSION */
+ if (virXen_getdomaininfo(fd, 0, &info) == 1) {
+ /* Xen 3.2, Fedora 9 */
+ dom_interface_version = 5; /* XEN_DOMCTL_INTERFACE_VERSION */
+ if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
+#ifdef DEBUG
+ fprintf(stderr, "Using hypervisor call v2, sys ver6 dom ver5\n");
+#endif
+ goto done;
+ }
+ }
+
hypervisor_version = 1;
sys_interface_version = -1;
if (virXen_getdomaininfo(fd, 0, &info) == 1) {