On Mon, May 23, 2005 at 11:01:06PM -0700, Ashok Raj wrote:
> We do this today in x86_64 case when we setup this upcomming cpu in
> cpu_online_map. But the issue is when we use ipi broadcast, its an ugly
I don't know of x86-64, but atleast on x86 ipi broadcast will send
to _all_ CPUs present, right? I mean the h/w does not know of the offline
CPUs and will send to them also. This could lead to a problem for the offline
CPUs when they come online and can take a spurious IPI (unless
there is support in h/w to clear pending IPI before doing STI).
> case when we dont know if the new cpu is receiving this as well, and
> we dont have real control there.
>
> i converted to use send_IPI_mask(cpu_online_map, CALL_FUNCTION_VECTOR)
> instead of the send_IPI_allbutself(CALL_FUNCTION_VECTOR) in
> __smp_call_function(), apart from taking the call_lock before setting the
> bit in online_map.
>
> Since Andi is concerned about tlb flush intr performance in the 8cpu and less
> case, iam planning temporarily use a startup cmd or choose this option
> automatically if CONFIG_HOTPLUG_CPU is set for the time being, until we can
> find a clean solution that satisfies everyone.
I think this should be the recommended approach (using send_IPI_mask if
CONFIG_HOTPLUG_CPU is defined) unless h/w is intelligent enough
that it avoids sending IPIs to offline CPUs or it supports clearing
pending interrupts.
--
Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]