Bump minimum supported Xen version to 4.9 There were no changes to the libxl API between 4.8 and 4.9, so the LIBXL_API_VERSION is set to 0x040800. Note: xen.git commit c3999835df is needed in any Xen package where this patch is expected to work. It is included in Xen 4.13, but would need backporting to anything older. The dependency on xen.git commit c3999835df makes it hard to upstream this patch. See bsc#1157490 and bsc#1167007 for more details Index: libvirt-6.9.0/src/libxl/libxl_conf.c =================================================================== --- libvirt-6.9.0.orig/src/libxl/libxl_conf.c +++ libvirt-6.9.0/src/libxl/libxl_conf.c @@ -1826,7 +1826,7 @@ libxlDriverConfigNew(void) int libxlDriverConfigInit(libxlDriverConfigPtr cfg) { - unsigned int free_mem; + uint64_t free_mem; if (virFileMakePath(cfg->logDir) < 0) { virReportError(VIR_ERR_INTERNAL_ERROR, Index: libvirt-6.9.0/src/libxl/libxl_domain.c =================================================================== --- libvirt-6.9.0.orig/src/libxl/libxl_domain.c +++ libvirt-6.9.0/src/libxl/libxl_domain.c @@ -1013,8 +1013,8 @@ libxlDomainSetVcpuAffinities(libxlDriver static int libxlDomainFreeMem(libxl_ctx *ctx, libxl_domain_config *d_config) { - uint32_t needed_mem; - uint32_t free_mem; + uint64_t needed_mem; + uint64_t free_mem; int32_t target_mem; int tries = 3; int wait_secs = 10; @@ -1408,7 +1408,7 @@ libxlDomainStart(libxlDriverPrivatePtr d params.stream_version = restore_ver; #endif ret = libxl_domain_create_restore(cfg->ctx, &d_config, &domid, - restore_fd, ¶ms, NULL, + restore_fd, -1, ¶ms, NULL, &aop_console_how); libxl_domain_restore_params_dispose(¶ms); } Index: libvirt-6.9.0/tests/libxlmock.c =================================================================== --- libvirt-6.9.0.orig/tests/libxlmock.c +++ libvirt-6.9.0/tests/libxlmock.c @@ -67,7 +67,7 @@ VIR_MOCK_IMPL_RET_ARGS(libxl_get_version VIR_MOCK_STUB_RET_ARGS(libxl_get_free_memory, int, 0, libxl_ctx *, ctx, - uint32_t *, memkb); + uint64_t *, memkb); VIR_MOCK_STUB_RET_ARGS(xc_interface_close, int, 0, Index: libvirt-6.9.0/meson.build =================================================================== --- libvirt-6.9.0.orig/meson.build +++ libvirt-6.9.0/meson.build @@ -1602,7 +1602,7 @@ elif get_option('driver_interface').enab endif if not get_option('driver_libxl').disabled() and conf.has('WITH_LIBVIRTD') - libxl_version = '4.6.0' + libxl_version = '4.9.0' libxl_dep = dependency('xenlight', version: '>=' + libxl_version, required: get_option('driver_libxl')) if libxl_dep.found() @@ -1632,7 +1632,7 @@ if not get_option('driver_libxl').disabl endif libxl_dep = declare_dependency( - compile_args: '-DLIBXL_API_VERSION=0x040500', + compile_args: '-DLIBXL_API_VERSION=0x040800', dependencies: [ libxl_dep, xtl_link_dep,