From 9f85b713fa090d09a45d118cfc49824ef7266602 Mon Sep 17 00:00:00 2001 From: Jim Fehlig Date: Tue, 23 Oct 2012 11:18:20 -0600 Subject: [PATCH] Fix detection of Xen sysctl version 9 In commit 371ddc98, I mistakenly added the check for sysctl version 9 after setting the hypercall version to 1, which will fail with error : xenHypervisorDoV1Op:967 : Unable to issue hypervisor ioctl 3166208: Function not implemented This check should be included along with the others that use hypercall version 2. (cherry picked from commit 9785f2b6f203ad5f153e68829b95f0e8c30a1560) --- src/xen/xen_hypervisor.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c index 3244bbdaa9..406079bc8c 100644 --- a/src/xen/xen_hypervisor.c +++ b/src/xen/xen_hypervisor.c @@ -2157,13 +2157,6 @@ xenHypervisorInit(struct xenHypervisorVersions *override_versions) } } - hv_versions.hypervisor = 1; - hv_versions.sys_interface = -1; - if (virXen_getdomaininfo(fd, 0, &info) == 1) { - VIR_DEBUG("Using hypervisor call v1"); - goto done; - } - /* Xen 4.2 * sysctl version 9 -> xen-unstable c/s 24102:dc8e55c90604 * domctl version 8 -> unchanged from Xen 4.1 @@ -2177,6 +2170,13 @@ xenHypervisorInit(struct xenHypervisorVersions *override_versions) } } + hv_versions.hypervisor = 1; + hv_versions.sys_interface = -1; + if (virXen_getdomaininfo(fd, 0, &info) == 1) { + VIR_DEBUG("Using hypervisor call v1"); + goto done; + } + /* * we failed to make the getdomaininfolist hypercall */