On Wed, 24 Jun 2015, Vitaly Kuznetsov wrote:

> Peter Zijlstra <pet...@infradead.org> writes:
> 
> > On Tue, Jun 23, 2015 at 04:57:05PM +0000, KY Srinivasan wrote:
> >
> >> > diff --git a/kernel/cpu.c b/kernel/cpu.c
> >> > index 94bbe46..8f35ee6 100644
> >> > --- a/kernel/cpu.c
> >> > +++ b/kernel/cpu.c
> >> > @@ -190,17 +190,19 @@ void cpu_hotplug_done(void)
> >> >  void cpu_hotplug_disable(void)
> >> >  {
> >> >          cpu_maps_update_begin();
> >> > -        cpu_hotplug_disabled = 1;
> >> > +        cpu_hotplug_disabled++;
> >> >          cpu_maps_update_done();
> >> >  }
> >> > +EXPORT_SYMBOL_GPL(cpu_hotplug_disable);
> >> > 
> >> >  void cpu_hotplug_enable(void)
> >> >  {
> >> >          cpu_maps_update_begin();
> >> > -        cpu_hotplug_disabled = 0;
> >> > +        if (cpu_hotplug_disabled)
> >> > +                cpu_hotplug_disabled--;
> >
> > No that just papers over bugs.
> >
> 
> Yes, but these bugs are not in Linux. I don't see any other way for a
> platform to enable/disable cpu hotplug in runtime.

What? cpu_hotplug_disable()/enable() do that today. They just do not
support recursion and we have not yet seen any argument WHY that's
required at all.

Thanks,

        tglx
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to