[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 7/7] libxl/vcpu-set - allow to decrease vcpu count on overcommitted guests (v5)
On July 1, 2015 7:42:33 AM EDT, "Xu, Quan" <quan.xu@xxxxxxxxx> wrote: > > >> -----Original Message----- >> From: xen-devel-bounces@xxxxxxxxxxxxx >> [mailto:xen-devel-bounces@xxxxxxxxxxxxx] On Behalf Of Konrad >Rzeszutek Wilk >> Sent: Monday, March 30, 2015 11:27 PM >> To: ian.campbell@xxxxxxxxxx; ian.jackson@xxxxxxxxxxxxx; >xen-devel@xxxxxxxxxxxxx; >> wei.liu2@xxxxxxxxxx >> Cc: Konrad Rzeszutek Wilk >> Subject: [Xen-devel] [PATCH v4 7/7] libxl/vcpu-set - allow to >decrease vcpu count >> on overcommitted guests (v5) >> >> We have a check to warn the user if they are overcommitting. >> But the check only checks the hosts CPU amount and does not take into >account >> the case when the user is trying to fix the overcommit. That is - >they want to limit >> the amount of online VCPUs. >> >> This fix allows the user to offline vCPUs without any warnings when >they are >> running an overcommitted guest. >> >> Also fix the extra space in the message. >> >> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> >> >> --- >> [v2: Remove crud code as spotted by Boris] >> [v3: Moved crud code removal to another patch] >> [v4: Remove the fprintf as it is done in libxl_domain_info] >> [v5: Fix memory leak] >> --- >> tools/libxl/xl_cmdimpl.c | 17 +++++++++++++---- >> 1 file changed, 13 insertions(+), 4 deletions(-) >> >> diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c >index >> b121d75..648ca08 100644 >> --- a/tools/libxl/xl_cmdimpl.c >> +++ b/tools/libxl/xl_cmdimpl.c >> @@ -5238,12 +5238,21 @@ static int vcpuset(uint32_t domid, const >char* >> nr_vcpus, int check_host) >> */ >> if (check_host) { >> unsigned int host_cpu = libxl_get_max_cpus(ctx); >> - if (max_vcpus > host_cpu) { >> - fprintf(stderr, "You are overcommmitting! You have %d >physical " \ >> - " CPUs and want %d vCPUs! Aborting, use >--ignore-host >> to " \ >> - " continue\n", host_cpu, max_vcpus); >> + libxl_dominfo dominfo; >> + >> + rc = libxl_domain_info(ctx, &dominfo, domid); >> + if (rc) >> return 1; >> + >> + if (max_vcpus > dominfo.vcpu_online && max_vcpus > host_cpu) >{ > >Konrad, > I have a question. Does xen support vcpu-set to reset vcpu-count >larger than current number of active VCPUs ?? Yes. > >If the vcpu-count is larger than the current number of active VCPUs, >sometimes Xen hypervisor doesn't run correctly with Call Trace form >series output. >For example, When I run vcpu-set to set Domain-0 vcpu count from 32 to >20( domain0_max_vcpu is 32), then I try to run vcpu-set to >Vcpu-set Domain-0 from 20 to 32 again(20 is current number of active >VCPUs ). sometimes, it is wrong form series output as below: > Did you use the latest kernel?please start another thread with this error and details such as kernel version, etc. Please CC David Vrabel and Boris Ostrovsky. >Output >> >[ 830.220998] Call Trace: >[ 830.221020] [<ffffffff8110fbca>] ? rcu_irq_exit+0x7a/0xe0 >[ 830.221032] [<ffffffff8105f010>] ? xen_safe_halt+0x10/0x20 >[ 830.221043] [<ffffffff81074abc>] ? default_idle+0x2c/0xd0 >[ 830.221051] [<ffffffff81073eea>] ? arch_cpu_idle+0xa/0x10 >[ 830.221064] [<ffffffff810fd2a5>] ? cpu_startup_entry+0x315/0x470 >[ 830.221074] [<ffffffff81065ed5>] ? cpu_bringup_and_idle+0x25/0x40 >[ 830.221082] rcu_sched kthread starved for 63005 jiffies! >Output<< > >BTW, I have tried to set domain-0 as >http://wiki.xen.org/wiki/Paravirt_Linux_CPU_Hotplug > > >Thanks >Quan Xu > > > >> + fprintf(stderr, "You are overcommmitting! You have %d >physical" \ >> + " CPUs and want %d vCPUs! Aborting, use >--ignore-host >> to" \ >> + " continue\n", host_cpu, max_vcpus); >> + rc = 1; >> } >> + libxl_dominfo_dispose(&dominfo); >> + if (rc) >> + return 1; >> } >> rc = libxl_cpu_bitmap_alloc(ctx, &cpumap, max_vcpus); >> if (rc) { >> -- >> 2.1.0 >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@xxxxxxxxxxxxx >> http://lists.xen.org/xen-devel -- Sent from my Android device with K-9 Mail. Please excuse my brevity. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |