Messages in this thread | | | Date | Thu, 11 Aug 2005 15:33:30 -0600 (MDT) | From | Zwane Mwaikambo <> | Subject | Re: [PATCH] i386 boottime for_each_cpu broken |
| |
Hello Bharata,
On Thu, 11 Aug 2005, Bharata B Rao wrote:
> I don't know the context of your work here, but a couple of > observations. > > Since you populate cpu_possible_map with NR_CPUS, alloc_percpu() > would end up allocating for all NR_CPUS. Wouldn't you have achieved > the same thing by compile time allocation ? Wouldn't this change > lead to NR_CPUS allocations from alloc_percpu() for all users ?
The patch has been modified (courtesy Andi Kleen) to do something a bit smarter and only allocate for detected cpus in MADT or MP table. But my prime concern was that for_each_cpu didn't work at all during boot.
> Now since you have separated cpu_possible_map from cpu_callout_map, > do we need to reflect cpu_possible_map with the value from > cpu_callout_map after the cpu_callout_map is initialized fully from > smp_prepare_cpus().
This should be taken care of using above.
> BTW, I am working on Kiran's dynamic percpu allocator patch and making > it cpu hotplug aware. With that, alloc_percpu would initially allocate > only for the possible cpus and would allocate for other cpus as and when > they come up.
Great, that takes care of my concerns regarding processors which aren't enumerated during smp boot.
Thanks for the feedback, Zwane
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |