[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] "xl vcpu-set" not persistent across reboot?
(I'm sorry for the re-send - somehow Stefano's old Citrix address got entered back into my address book.) >>> On 03.06.16 at 18:35, <wei.liu2@xxxxxxxxxx> wrote: > I got a patch ready. But QEMU upstream refuses to start on the receiving end > with following error message: > > qemu-system-i386: Unknown savevm section or instance 'cpu_common' 1 > qemu-system-i386: load of migration failed: Invalid argument > > With QEMU traditional HVM guest and PV guest, the guest works fine -- up > and running with all hot plugged cpus available. > > So I think the relevant libxl information is transmitted but we also > need to fix QEMU upstream. But that's a separate issue. Stefano, Anthony, any thoughts here? Thanks, Jan > ---8<--- > From 790ff77c6307b341dec0b4cc5e2d394e42f82e7c Mon Sep 17 00:00:00 2001 > From: Wei Liu <wei.liu2@xxxxxxxxxx> > Date: Fri, 3 Jun 2016 16:38:32 +0100 > Subject: [PATCH] libxl: update vcpus bitmap in retrieved geust config > > ... because the available vcpu bitmap can change during domain life time > due to cpu hotplug and unplug. > > Reported-by: Jan Beulich <jbeulich@xxxxxxxx> > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > tools/libxl/libxl.c | 31 +++++++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > > diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c > index 006b83f..99617f3 100644 > --- a/tools/libxl/libxl.c > +++ b/tools/libxl/libxl.c > @@ -7270,6 +7270,37 @@ int libxl_retrieve_domain_configuration(libxl_ctx > *ctx, uint32_t domid, > libxl_dominfo_dispose(&info); > } > > + /* VCPUs */ > + { > + libxl_vcpuinfo *vcpus; > + libxl_bitmap *map; > + int nr_vcpus, nr_cpus; > + unsigned int i; > + > + vcpus = libxl_list_vcpu(ctx, domid, &nr_vcpus, &nr_cpus); > + if (!vcpus) { > + LOG(ERROR, "fail to get vcpu list for domain %d", domid); > + rc = ERROR_FAIL; > + goto out; > + } > + > + /* Update the avail_vcpus bitmap accordingly */ > + map = &d_config->b_info.avail_vcpus; > + > + libxl_bitmap_dispose(map); > + > + libxl_bitmap_alloc(ctx, map, nr_vcpus); > + > + libxl_bitmap_init(map); > + > + for (i = 0; i < nr_vcpus; i++) { > + if (vcpus[i].online) > + libxl_bitmap_set(map, i); > + } > + > + libxl_vcpuinfo_list_free(vcpus, nr_vcpus); > + } > + > /* Memory limits: > * > * Currently there are three memory limits: > -- > 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |