On 05/20/2014 04:01 PM, Srivatsa S. Bhat wrote: > On 05/20/2014 03:55 PM, Peter Zijlstra wrote: >> On Tue, May 20, 2014 at 03:39:59PM +0530, Srivatsa S. Bhat wrote: >>>> The multi_cpu_stop() path isn't exclusive to hotplug, so your changelog >>>> is wrong or the patch is. >>>> >>> >>> Yes, I know that multi_cpu_stop() isn't exclusive to hotplug. That's why >>> I have explicitly referred to CPU hotplug in the comment as well as the >>> changelog. >>> >>> But I totally agree that code-wise this is not the best way to do it since >>> this affects (although harmlessly) usecases other than hotplug as well. >>> >>> Do you have any other suggestions? >> >> How about making a kernel/smp.c hotplug notifier and stuffing it in the >> CPU_DYING list? That's typically after we've already torn down the >> interrupts for that cpu, so no chance of any new ones coming in. >> >> Or is that too late? >> > > No, that should work just fine. Thank you for the suggestion! I'll give > it a shot. >
The only problem will be that CPU_DYING notifiers are run after marking the CPU offline, and hence the warning will trigger. We can avoid that by defining a __generic_smp_call_function_single_interrupt() that doesn't check for cpu_online(smp_processor_id) and call this function from the hotplug notifier. Regards, Srivatsa S. Bhat -- 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/

