Re: [discuss] Re: [patch 0/4] CPU hot-plug support for x86_64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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]
  Powered by Linux