On Mon, 6 Jun 2016, Lianwei Wang wrote: > Currently it just print a warning message but did not > reset cpu_hotplug_disabled when the enable/disable is > unbalanced. The unbalanced enable/disable will lead > the cpu hotplug work abnormally. > > Do nothing if an unablanced hotplug enable detected. > > Signed-off-by: Lianwei Wang <lianwei.w...@gmail.com> > --- > kernel/cpu.c | 21 +++++++++++++++++---- > 1 file changed, 17 insertions(+), 4 deletions(-) > > diff --git a/kernel/cpu.c b/kernel/cpu.c > index 3e3f6e49eabb..8011b1e40523 100644 > --- a/kernel/cpu.c > +++ b/kernel/cpu.c > @@ -245,6 +245,19 @@ void cpu_hotplug_done(void) > cpuhp_lock_release(); > } > > +static void _cpu_hotplug_disable(void)
What's the purpose of this function? > +{ > + cpu_hotplug_disabled++; > +} > + > +static void _cpu_hotplug_enable(void) Double underscores please > +{ > + if (WARN(!cpu_hotplug_disabled, "Unbalanced cpu hotplug enable\n")) > + return; And this want's to be a WARN_ONCE() Thanks, tglx