From: David Daney <david.daney@cavium.com> Date: Wed, 11 Sep 2013 21:23:25 +0000 (-0700) Subject: up.c: use local_irq_{save,restore}() in smp_call_function_single. X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=081192b25c2d4620b5f5838620624d3daee94b66;p=linux.git up.c: use local_irq_{save,restore}() in smp_call_function_single. The SMP version of this function doesn't unconditionally enable irqs, so neither should this !SMP version. There are no know problems caused by this, but we make the change for consistency's sake. Signed-off-by: David Daney <david.daney@cavium.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> --- diff --git a/kernel/up.c b/kernel/up.c index 144e572552346..b1cf036255f3f 100644 --- a/kernel/up.c +++ b/kernel/up.c @@ -10,11 +10,13 @@ int smp_call_function_single(int cpu, void (*func) (void *info), void *info, int wait) { + unsigned long flags; + WARN_ON(cpu != 0); - local_irq_disable(); - (func)(info); - local_irq_enable(); + local_irq_save(flags); + func(info); + local_irq_restore(flags); return 0; }