[PATCH] x86: make reboot task only run on the appropriate processor
Vivek Goyal
vgoyal at redhat.com
Fri Nov 8 11:24:21 EST 2013
On Fri, Nov 08, 2013 at 08:12:00AM -0800, H. Peter Anvin wrote:
> On 11/08/2013 07:14 AM, Vivek Goyal wrote:
> >
> > Hi Bao,
> >
> > This patch fixes the issue for me too. I noticed that we have generic
> > function migrate_to_reboot_cpu() to achieve what we want and rest of
> > the reboot paths are using it. So how about using that function. I
> > wrote the new patch below. It works for me. Can you please give it
> > a try.
> >
> > Thanks
> > Vivek
> >
>
> Is this path exercised for the kdump flow? migrate_to_reboot_cpu() is
> unsafe in that case.
kdump path should not be affected by this change as it uses crash_kexec()
instead of kerenl_kexec() for its entry. And crash_kexec() path does not
call migrate_to_reboot_cpu().
Thanks
Vivek
>
> > Index: linux-2.6/kernel/kexec.c
> > ===================================================================
> > --- linux-2.6.orig/kernel/kexec.c 2013-10-16 00:30:50.000000000 -0400
> > +++ linux-2.6/kernel/kexec.c 2013-11-08 21:34:02.492072375 -0500
> > @@ -1676,6 +1676,7 @@ int kernel_kexec(void)
> > #endif
> > {
> > kernel_restart_prepare(NULL);
> > + migrate_to_reboot_cpu();
> > printk(KERN_EMERG "Starting new kernel\n");
> > machine_shutdown();
> > }
> >
More information about the kexec
mailing list