Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6760bca9 authored by Srivatsa S. Bhat's avatar Srivatsa S. Bhat Committed by Ingo Molnar
Browse files

perf, cpu hotplug: Run CPU_STARTING notifiers with irqs disabled



The CPU_STARTING notifiers are supposed to be run with irqs
disabled. But the perf_cpu_notifier() macro invokes them without
doing that. Fix it.

Signed-off-by: default avatarSrivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Reviewed-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: peterz@infradead.org
Cc: acme@ghostprotocols.net
Link: http://lkml.kernel.org/r/20121016075809.3572.47848.stgit@srivatsabhat.in.ibm.com


Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent bffd5fc2
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -803,10 +803,13 @@ static inline void perf_event_task_tick(void) { }
do {									\
	static struct notifier_block fn##_nb __cpuinitdata =		\
		{ .notifier_call = fn, .priority = CPU_PRI_PERF };	\
	unsigned long flags;						\
	fn(&fn##_nb, (unsigned long)CPU_UP_PREPARE,			\
		(void *)(unsigned long)smp_processor_id());		\
	local_irq_save(flags);						\
	fn(&fn##_nb, (unsigned long)CPU_STARTING,			\
		(void *)(unsigned long)smp_processor_id());		\
	local_irq_restore(flags);					\
	fn(&fn##_nb, (unsigned long)CPU_ONLINE,				\
		(void *)(unsigned long)smp_processor_id());		\
	register_cpu_notifier(&fn##_nb);				\