[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Patch] adjust the cpu-affinity to more than 64 cpus



>>> "James (song wei)" <jsong@xxxxxxxxxx> 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 = 0, i;
>-    uint64_t  cpumap = ~0ULL;
>+    uint64_t  *cpumap;
>     PyObject *cpulist = NULL;
>+    int nr_cpus, size;
>+    xc_physinfo_t info; 
>+    xc_cpu_to_node_t map[1];
>+    uint64_t cpumap_size = sizeof(cpumap); 

Perhaps sizeof(*cpumap)?

>...
>+            *(cpumap + cpu / (cpumap_size * 8)) |= (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 = 0;
>     xc_vcpuinfo_t info;
>     int rc, i;
>-    uint64_t cpumap;
>+    uint64_t *cpumap;
>+    int nr_cpus, size;
>+    xc_physinfo_t pinfo = { 0 };
>+    xc_cpu_to_node_t map[1];
>+    uint64_t cpumap_size = sizeof(cpumap);

Same as above.
 
>@@ -385,17 +421,18 @@
>                               "cpu",      info.cpu);
> 
>     cpulist = PyList_New(0);
>-    for ( i = 0; cpumap != 0; i++ )
>+    for ( i = 0; i < size * cpumap_size * 8; i++ )

Why not simply use nr_cpus here?

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.