Commit 7942b5e1 authored by Xiao Guangrong's avatar Xiao Guangrong Committed by James Toy

This patch is incomplete and thanks for Peter Zijlstra to point out

Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 773438d6
...@@ -136,7 +136,8 @@ __generic_smp_call_function_interrupt(int cpu, int run_callbacks) ...@@ -136,7 +136,8 @@ __generic_smp_call_function_interrupt(int cpu, int run_callbacks)
if (!cpumask_test_and_clear_cpu(cpu, data->cpumask)) if (!cpumask_test_and_clear_cpu(cpu, data->cpumask))
continue; continue;
data->csd.func(data->csd.info); if (run_callbacks)
data->csd.func(data->csd.info);
refs = atomic_dec_return(&data->refs); refs = atomic_dec_return(&data->refs);
WARN_ON(refs < 0); WARN_ON(refs < 0);
...@@ -187,7 +188,8 @@ __generic_smp_call_function_single_interrupt(int cpu, int run_callbacks) ...@@ -187,7 +188,8 @@ __generic_smp_call_function_single_interrupt(int cpu, int run_callbacks)
*/ */
data_flags = data->flags; data_flags = data->flags;
data->func(data->info); if (run_callbacks)
data->func(data->info);
/* /*
* Unlocked CSDs are valid through generic_exec_single(): * Unlocked CSDs are valid through generic_exec_single():
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment