>>> "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
|