From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [Patch] adjust the cpu-affinity to more than 64 cpus Date: Wed, 17 Mar 2010 09:25:04 +0000 Message-ID: <4BA0AE00020000780003576C@vpn.id2.novell.com> References: <27928229.post@talk.nabble.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <27928229.post@talk.nabble.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: James Song Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org >>> "James (song wei)" 17.03.10 09:56 >>> >--- a/tools/python/xen/lowlevel/xc/xc.c Mon Mar 15 17:08:29 2010 = +0000 >+++ b/tools/python/xen/lowlevel/xc/xc.c Wed Mar 17 16:51:07 2010 = +0800 >@@ -215,35 +215,54 @@ > { > uint32_t dom; > int vcpu =3D 0, i; >- uint64_t cpumap =3D ~0ULL; >+ uint64_t *cpumap; > PyObject *cpulist =3D NULL; >+ int nr_cpus, size; >+ xc_physinfo_t info;=20 >+ xc_cpu_to_node_t map[1]; >+ uint64_t cpumap_size =3D sizeof(cpumap);=20 Perhaps sizeof(*cpumap)? >... >+ *(cpumap + cpu / (cpumap_size * 8)) |=3D (uint64_t)1 << (cpu = % (cpumap_size * 8)); Using [] here and in similar places further down would likely make these constructs a little bit more legible. >@@ -362,7 +381,11 @@ > uint32_t dom, vcpu =3D 0; > xc_vcpuinfo_t info; > int rc, i; >- uint64_t cpumap; >+ uint64_t *cpumap; >+ int nr_cpus, size; >+ xc_physinfo_t pinfo =3D { 0 }; >+ xc_cpu_to_node_t map[1]; >+ uint64_t cpumap_size =3D sizeof(cpumap); Same as above. =20 >@@ -385,17 +421,18 @@ > "cpu", info.cpu); >=20 > cpulist =3D PyList_New(0); >- for ( i =3D 0; cpumap !=3D 0; i++ ) >+ for ( i =3D 0; i < size * cpumap_size * 8; i++ ) Why not simply use nr_cpus here? Jan