From mboxrd@z Thu Jan 1 00:00:00 1970 From: Khalid Aziz Date: Tue, 14 Mar 2006 16:00:15 +0000 Subject: Re: [PATCH] kexec for ia64 Message-Id: <1142352015.18421.3.camel@lyra.fc.hp.com> List-Id: References: <1142271576.10787.15.camel@lyra.fc.hp.com> <20060313224404.1133fc28.akpm@osdl.org> In-Reply-To: <20060313224404.1133fc28.akpm@osdl.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Andrew Morton Cc: Fastboot mailing list , Linux ia64 , LKML , "Luck, Tony" On Mon, 2006-03-13 at 22:44 -0800, Andrew Morton wrote: > Khalid Aziz wrote: > > + int cpu; > > + > > + for_each_online_cpu(cpu) { > > + if (cpu != smp_processor_id()) > > + cpu_down(cpu); > > + } > > +#else > > + smp_call_function(kexec_stop_this_cpu, (void *)image->start, 0, 0); > > +#endif > > +#endif > > Why is different code needed for hotplug cpu? Hi Andrew, It is preferable to use cpu_down() to shoot down a cpu, but this function is available only with CONFIG_HOTPLUG_CPU. If CONFIG_HOTPLUG_CPU is not enabled, only other way to shut down slave CPUs in a state where they would come back up when the new kernel boots up and sends them IPI is to hold them in a fake rendezvous which is what the function kexec_stop_this_cpu() does. So the choices are either to keep both ways of shutting down CPUs or go with kexec_stop_this_cpu() for all cases. Thanks for the comments. I will move declarations to header files as you suggested. -- Khalid ================================== Khalid Aziz Open Source and Linux Organization (970)898-9214 Hewlett-Packard khalid.aziz@hp.com Fort Collins, CO "The Linux kernel is subject to relentless development" - Alessandro Rubini