aboutsummaryrefslogtreecommitdiffstats
path: root/main/libvirt/libvirt-0.10.2-support-xen-sysctl-v9.patch
blob: 2270075b5db71f719e4c0f97ba95b07135b762da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
From: Jim Fehlig <jfehlig@suse.com>
Date: Wed, 26 Sep 2012 16:34:17 +0000 (-0600)
Subject: Support Xen sysctl version 9 in Xen 4.2
X-Git-Url: http://libvirt.org/git/?p=libvirt.git;a=commitdiff_plain;h=371ddc98664cbbd8542593e5452115ea7918dae2

Support Xen sysctl version 9 in Xen 4.2

Xen upstream c/s 24102:dc8e55c9 bumped the sysctl version to 9.
Support this sysctl version in the xen_hypervisor sub-driver.
---

diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c
index fdc3071..3244bbd 100644
--- a/src/xen/xen_hypervisor.c
+++ b/src/xen/xen_hypervisor.c
@@ -2164,6 +2164,18 @@ xenHypervisorInit(struct xenHypervisorVersions *override_versions)
         goto done;
     }
 
+    /* Xen 4.2
+     * sysctl version 9 -> xen-unstable c/s 24102:dc8e55c90604
+     * domctl version 8 -> unchanged from Xen 4.1
+     */
+    hv_versions.sys_interface = 9; /* XEN_SYSCTL_INTERFACE_VERSION */
+    if (virXen_getdomaininfo(fd, 0, &info) == 1) {
+        hv_versions.dom_interface = 8; /* XEN_DOMCTL_INTERFACE_VERSION */
+        if (virXen_getvcpusinfo(fd, 0, 0, ipt, NULL, 0) == 0){
+            VIR_DEBUG("Using hypervisor call v2, sys ver9 dom ver8");
+            goto done;
+        }
+    }
 
     /*
      * we failed to make the getdomaininfolist hypercall