diff options
Diffstat (limited to 'kernel/profile.c')
-rw-r--r-- | kernel/profile.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/profile.c b/kernel/profile.c index a38fa70075fe..0221a50ca867 100644 --- a/kernel/profile.c +++ b/kernel/profile.c | |||
@@ -184,7 +184,7 @@ void unregister_timer_hook(int (*hook)(struct pt_regs *)) | |||
184 | WARN_ON(hook != timer_hook); | 184 | WARN_ON(hook != timer_hook); |
185 | timer_hook = NULL; | 185 | timer_hook = NULL; |
186 | /* make sure all CPUs see the NULL hook */ | 186 | /* make sure all CPUs see the NULL hook */ |
187 | synchronize_kernel(); | 187 | synchronize_sched(); /* Allow ongoing interrupts to complete. */ |
188 | } | 188 | } |
189 | 189 | ||
190 | EXPORT_SYMBOL_GPL(register_timer_hook); | 190 | EXPORT_SYMBOL_GPL(register_timer_hook); |
@@ -522,7 +522,7 @@ static int __init create_hash_tables(void) | |||
522 | return 0; | 522 | return 0; |
523 | out_cleanup: | 523 | out_cleanup: |
524 | prof_on = 0; | 524 | prof_on = 0; |
525 | mb(); | 525 | smp_mb(); |
526 | on_each_cpu(profile_nop, NULL, 0, 1); | 526 | on_each_cpu(profile_nop, NULL, 0, 1); |
527 | for_each_online_cpu(cpu) { | 527 | for_each_online_cpu(cpu) { |
528 | struct page *page; | 528 | struct page *page; |