Messages in this thread | | | Date | Thu, 09 Feb 2006 14:55:35 +0100 | From | Eric Dumazet <> | Subject | Re: [PATCH] percpu data: only iterate over possible CPUs |
| |
Heiko Carstens a écrit : >> for (cpu = max_cpus ; cpu < NR_CPUS ; cpu++) >> cpu_clear(cpu, cpu_possible_map); > > Hmm... I don't think the semantics of cpu_possible_map allow to change it. > Also any code that uses for_each_cpu() may allocate memory _before_ > cpu_possible_map is changed back to reflect a smaller number of cpus. > Doesn't look like the correct way to fix this. > Thinking a bit longer this was probably a reason why initialization of > this map was done in smp_prepare_cpus() before it silently moved to > setup_arch().
Hum... of course you may loose some bits of memory (percpu data for example) but clearing a cpu in cpu_possible_map is allowed.
See arch/alpha/kernel/process.c and arch/x86_64/kernel/smpboot.c for uses of cpu_clear()
- 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/
| |