From: Jim Fehlig Date: Tue, 23 Oct 2012 17:18:20 +0000 (-0600) Subject: Fix detection of Xen sysctl version 9 X-Git-Tag: v1.0.0-rc1~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9785f2b6f203ad5f153e68829b95f0e8c30a1560;p=thirdparty%2Flibvirt.git 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. --- 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 */