Hi, as Jan Beulich pointed out: > I'm afraid this change isn't really correct: > >> + cores_per_node = info['nr_cpus'] / info['nr_nodes'] >> + nodes_required = (self.info['VCPUs_max'] + cores_per_node - 1) / cores_per_node > > Simply using cores_per_node (as calculated here) as a divisor is bound > to cause division-by-zero issues, namely when limiting the number of > CPUs on the Xen command line (maxcpus=). Actually Jan's proposed method of getting additional nodes is more elegant, so I implemented: enumerating the best nodes and adding CPU affinity until all VCPUs can be backed by at least on physical core. This should fix problems with asymmetric NUMA configurations and cropped number of CPUs in Xen. Regards, Andre. Signed-off-by: Andre Przywara -- Andre Przywara AMD-Operating System Research Center (OSRC), Dresden, Germany Tel: +49 351 488-3567-12 ----to satisfy European Law for business letters: Advanced Micro Devices GmbH Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen Geschaeftsfuehrer: Andrew Bowd; Thomas M. McCoy; Giuliano Meroni Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen Registergericht Muenchen, HRB Nr. 43632