diff --git a/src/libxl/libxl_conf.h b/src/libxl/libxl_conf.h index 6aa36d2..6449b46 100644 --- a/src/libxl/libxl_conf.h +++ b/src/libxl/libxl_conf.h @@ -55,6 +55,13 @@ # define LIBXL_DUMP_DIR LIBXL_LIB_DIR "/dump" # define LIBXL_BOOTLOADER_PATH BINDIR "/pygrub" +# ifndef LIBXL_HAVE_VCPUINFO_SOFT_AFFINITY +# define libxl_set_vcpuaffinity(ctx, domid, vcpuid, map, softmap) \ + libxl_set_vcpuaffinity((ctx), (domid), (vcpuid), (map)) +# define libxl_set_vcpuaffinity_all(ctx, domid, max_vcpus, map, softmap) \ + libxl_set_vcpuaffinity_all((ctx), (domid), (max_vcpus), (map)) +# endif + typedef struct _libxlDriverPrivate libxlDriverPrivate; typedef libxlDriverPrivate *libxlDriverPrivatePtr; diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c index da3f241..fafd9c5 100644 --- a/src/libxl/libxl_domain.c +++ b/src/libxl/libxl_domain.c @@ -1029,7 +1029,7 @@ libxlDomainSetVcpuAffinities(libxlDriverPrivatePtr driver, virDomainObjPtr vm) map.size = cpumaplen; map.map = cpumap; - if (libxl_set_vcpuaffinity(priv->ctx, def->id, vcpu, &map) != 0) { + if (libxl_set_vcpuaffinity(priv->ctx, def->id, vcpu, &map, NULL) != 0) { virReportError(VIR_ERR_INTERNAL_ERROR, _("Failed to pin vcpu '%d' with libxenlight"), vcpu); goto cleanup; diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index 646c9b9..6f4a2f2 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -1981,7 +1981,8 @@ libxlDomainPinVcpuFlags(virDomainPtr dom, unsigned int vcpu, libxlDomainObjPrivatePtr priv; priv = vm->privateData; - if (libxl_set_vcpuaffinity(priv->ctx, vm->def->id, vcpu, &map) != 0) { + if (libxl_set_vcpuaffinity(priv->ctx, vm->def->id, + vcpu, &map, NULL) != 0) { virReportError(VIR_ERR_INTERNAL_ERROR, _("Failed to pin vcpu '%d' with libxenlight"), vcpu);