From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH] numa: fix problems with memory-less nodes Date: Wed, 13 Jan 2010 08:26:22 +0000 Message-ID: References: <4B4CA391.2040005@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4B4CA391.2040005@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Andre Przywara Cc: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org On 12/01/2010 16:30, "Andre Przywara" wrote: > If we decided to not report memory-less nodes in physinfo we should also > skip them in the node_to_{cpu,memory,dma32_mem} Python lists. Currently > Xen will not start guests on machines with memory-less nodes which are > not the last ones. On an 8-node machine with empty nodes 4 and 5 "xm > info" was reporting wrongly, also the node assignment algorithm crashed > with a division by zero error. > The attached patch fixes this by skipping empty nodes in the enumeration > of resources. Where to begin? Firstly, I thought that the ordering of nodes in the node_to_* lists actually mattered -- the lists are indexed by nodeid (a handle which can be passed to other Xen interfaces) are they not? If you don't include empty entries, then the index position of entries is no longer meaningful. Secondly, you avoid appending to the node_to_cpu list if the node is cpu-less. But you avoid appending to the node_to_{memory,dma32} lists only if the node is *both* cpu-less and memory-less. That's not even consistent. Please just fix the crap Python code. -- Keir