Index: xen-4.2.0-testing/tools/python/xen/xm/cpupool.py =================================================================== --- xen-4.2.0-testing.orig/tools/python/xen/xm/cpupool.py +++ xen-4.2.0-testing/tools/python/xen/xm/cpupool.py @@ -157,9 +157,17 @@ def make_cpus_config(cfg_cpus): # ["0,2","1,3"] -> [[0,2],[1,3]] # ["0-3,^1","1-4,^2"] -> [[0,2,3],[1,3,4]] try: - for c in cfg_cpus: - cpus = cnv(c) - cpus_list.append(cpus) + cpus_str = "" + list_len = len(cfg_cpus) + n = 0 + while n < list_len: + if type(cfg_cpus[n]) != str: + raise SyntaxError('cpus = %s' % cfg_cpus) + cpus_str += cfg_cpus[n] + n += 1 + if n < list_len: + cpus_str += ', ' + cpus_list = cnv(cpus_str) except ValueError, e: raise err('cpus = %s: %s' % (cfg_cpus, e)) else: