Messages in this thread | | | Date | Mon, 28 Jul 2008 11:42:22 -0700 | From | Mike Travis <> | Subject | Re: [git pull] cpus4096 fixes |
| |
Ingo Molnar wrote: ... > NUMA-locality might have been a valid argument in favor of the massive > array of constant cpumasks (common usage is to use it for the current > cpu), if it wasnt all stupidly allocated on the boot node: > > cpumask_of_cpu_map = alloc_bootmem_low(sizeof(cpumask_t) * nr_cpu_ids); > for (i = 0; i < nr_cpu_ids; i++) > cpu_set(i, cpumask_of_cpu_map[i]);
The alternate method was for each cpu to contribute a cpumask_of_cpu for itself in the percpu area. I don't recall why that idea was rejected.
But yes, the set_cpus_allowed is the biggest receiver of cpumask_t's with a single bit set. I had also proposed a different interface allowing just that, but I think it was rejected as being redundant.
Thanks, Mike
| |