From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: Re: [PATCH] xl cpupool-numa-split: reduce number of Dom0 vcpus Date: Mon, 14 Feb 2011 14:13:19 +0100 Message-ID: <4D592A6F.9040700@ts.fujitsu.com> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------060108050509030303060409" Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: George Dunlap Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------060108050509030303060409 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 02/14/11 13:36, George Dunlap wrote: > Is looping 10 times really the best option? Oops! Forgot the sleep(1) :-( What about this one? -- Juergen Gross Principal Developer Operating Systems TSP ES&S SWE OS6 Telephone: +49 (0) 89 3222 2967 Fujitsu Technology Solutions e-mail: juergen.gross@ts.fujitsu.com Domagkstr. 28 Internet: ts.fujitsu.com D-80807 Muenchen Company details: ts.fujitsu.com/imprint.html --------------060108050509030303060409 Content-Type: text/x-patch; name="xen-work.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="xen-work.patch" # HG changeset patch # User Juergen Gross # Date 1297680409 -3600 # Node ID fdcb4e8eb4bb02f2c14b5333b9839dbd7b8786df # Parent f3579aa973c24a4ecee809a184b08c1855cd07ba xl cpupool-numa-split: reduce number of Dom0 vcpus When reducing the number of physical cpus available for Domain-0 by xl cpupool-numa-split, reduce the number of vcpus accordingly. Signed-off-by: juergen.gross@ts.fujitsu.com diff -r f3579aa973c2 -r fdcb4e8eb4bb tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c Mon Feb 14 11:02:50 2011 +0100 +++ b/tools/libxl/xl_cmdimpl.c Mon Feb 14 11:46:49 2011 +0100 @@ -5762,6 +5762,7 @@ int main_cpupoolnumasplit(int argc, char libxl_cpumap cpumap; libxl_cpupoolinfo *poolinfo; libxl_topologyinfo topology; + libxl_dominfo info; while ((opt = getopt(argc, argv, "h")) != -1) { switch (opt) { @@ -5817,11 +5818,28 @@ int main_cpupoolnumasplit(int argc, char goto out; } + n = 0; for (c = 0; c < topology.nodemap.entries; c++) { if (topology.nodemap.array[c] == node) { topology.nodemap.array[c] = LIBXL_CPUARRAY_INVALID_ENTRY; - } - } + libxl_cpumap_set(&cpumap, n); + n++; + } + } + if (libxl_set_vcpuonline(&ctx, 0, &cpumap)) { + fprintf(stderr, "error on removing vcpus for Domain-0\n"); + goto out; + } + for (c = 0; c < 10; c++) { + if (libxl_domain_info(&ctx, &info, 0)) { + fprintf(stderr, "error on getting info for Domain-0\n"); + goto out; + } + if (info.vcpu_online == n) { + break; + } + } + memset(cpumap.map, 0, cpumap.size); for (c = 0; c < topology.nodemap.entries; c++) { if (topology.nodemap.array[c] == LIBXL_CPUARRAY_INVALID_ENTRY) { --------------060108050509030303060409 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------060108050509030303060409--