On Wed, Jul 05, 2017 at 11:07:34AM +0200, Thomas Gleixner wrote:
> On Wed, 5 Jul 2017, Peter Zijlstra wrote:

> > OK, so if I get this right we do something like:
> > 
> > 
> > BP                          AP
> > 
> > bringup_cpu();
> >   __cpu_up()  ------------>     /* stuff */
> >   bringup_wait_for_ap()
> >     wait_for_completion();
> >                             cpuhp_online_idle();
> >             <------------    complete(&st->done);
> >     unpark()
> >                             while(1)
> >                               do_idle();
> 
> actually I added after unpark():
> 
>      kick_ap()
>      wait_for_completion()
> 
> So the AP will execute the online callbacks in its own hotplug thread.

Indeed, but I stopped after the unpark() bits bcause well, that's what
you changed here :-)

Reply via email to