Re: [PATCH -v8 01/11] CPU hotplug: Provide a generic helper to disable/enable CPU hotplug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thursday, May 09, 2013 03:01:21 PM Andrew Morton wrote:
> On Tue,  7 May 2013 09:39:45 -0500 Robin Holt <holt@xxxxxxx> wrote:
> 
> > From: "Srivatsa S. Bhat" <srivatsa.bhat@xxxxxxxxxxxxxxxxxx>
> > 
> > There are instances in the kernel where we would like to disable
> > CPU hotplug (from sysfs) during some important operation. Today
> > the freezer code depends on this and the code to do it was kinda
> > tailor-made for that.
> > 
> > Restructure the code and make it generic enough to be useful for
> > other usecases too.
> > 
> > ...
> >
> > --- a/include/linux/cpu.h
> > +++ b/include/linux/cpu.h
> > @@ -141,6 +141,8 @@ static inline void unregister_cpu_notifier(struct notifier_block *nb)
> >  }
> >  #endif
> >  
> > +extern void cpu_hotplug_disable(void);
> > +extern void cpu_hotplug_enable(void);
> >  int cpu_up(unsigned int cpu);
> >  void notify_cpu_starting(unsigned int cpu);
> >  extern void cpu_maps_update_begin(void);
> > @@ -148,6 +150,7 @@ extern void cpu_maps_update_done(void);
> >  
> >  #else	/* CONFIG_SMP */
> >  
> > +#define cpu_hotplug_disable()	do { } while (0)
> >  #define cpu_notifier(fn, pri)	do { (void)(fn); } while (0)
> >  
> 
> Breaks alpha allmodconfig because cpu_hotplug_disable() is absent from
> vmlinux.
> 
> cpu_hotplug_disable() doesn't get compiled unless we've defined
> CONFIG_PM_SLEEP_SMP.  I cannot begin to imagine what the logic is
> behind that!

I suppose it was only used by suspend/hibernate code paths when this was
introduced.

Thanks,
Rafael

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]