This patch changes calls to synchronize_kernel(), deprecated in the earlier "Deprecate synchronize_kernel, GPL replacement" patch to instead call the new synchronize_rcu() and synchronize_sched() APIs.
Showing the changes to kernel (2 of 16 files). Show all
Unified · Split
| @@ -1801,7 +1801,7 @@ sys_init_module(void __user *umod, · 1800 unmodified lines | |||
| 1801 | /* Init routine failed: abort. Try to protect us from | 1801 | /* Init routine failed: abort. Try to protect us from |
| 1802 | buggy refcounters. */ | 1802 | buggy refcounters. */ |
| 1803 | mod->state = MODULE_STATE_GOING; | 1803 | mod->state = MODULE_STATE_GOING; |
| 1804 | synchronize_kernel(); | 1804 | synchronize_sched(); |
| 1805 | if (mod->unsafe) | 1805 | if (mod->unsafe) |
| 1806 | printk(KERN_ERR "%s: module is now stuck!\n", | 1806 | printk(KERN_ERR "%s: module is now stuck!\n", |
| 1807 | mod->name); | 1807 | mod->name); |
| @@ -184,7 +184,7 @@ void unregister_timer_hook(int (*hook)(struct pt_regs *)) · 183 unmodified lines | |||
| 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); |