sched/core: Update preempt_notifier_key to modern API
No changes in refcount semantics, use DEFINE_STATIC_KEY_FALSE() for initialization and replace: static_key_slow_inc|dec() => static_branch_inc|dec() static_key_false() => static_branch_unlikely() Signed-off-by: Davidlohr Bueso <dbueso@suse.de> Cc: Davidlohr Bueso <dave@stgolabs.net> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: akpm@linux-foundation.org Link: http://lkml.kernel.org/r/20180326210929.5244-4-dave@stgolabs.net Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
		
							parent
							
								
									e97a90f706
								
							
						
					
					
						commit
						b720342849
					
				| @ -2462,17 +2462,17 @@ void wake_up_new_task(struct task_struct *p) | ||||
| 
 | ||||
| #ifdef CONFIG_PREEMPT_NOTIFIERS | ||||
| 
 | ||||
| static struct static_key preempt_notifier_key = STATIC_KEY_INIT_FALSE; | ||||
| static DEFINE_STATIC_KEY_FALSE(preempt_notifier_key); | ||||
| 
 | ||||
| void preempt_notifier_inc(void) | ||||
| { | ||||
| 	static_key_slow_inc(&preempt_notifier_key); | ||||
| 	static_branch_inc(&preempt_notifier_key); | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(preempt_notifier_inc); | ||||
| 
 | ||||
| void preempt_notifier_dec(void) | ||||
| { | ||||
| 	static_key_slow_dec(&preempt_notifier_key); | ||||
| 	static_branch_dec(&preempt_notifier_key); | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(preempt_notifier_dec); | ||||
| 
 | ||||
| @ -2482,7 +2482,7 @@ EXPORT_SYMBOL_GPL(preempt_notifier_dec); | ||||
|  */ | ||||
| void preempt_notifier_register(struct preempt_notifier *notifier) | ||||
| { | ||||
| 	if (!static_key_false(&preempt_notifier_key)) | ||||
| 	if (!static_branch_unlikely(&preempt_notifier_key)) | ||||
| 		WARN(1, "registering preempt_notifier while notifiers disabled\n"); | ||||
| 
 | ||||
| 	hlist_add_head(¬ifier->link, ¤t->preempt_notifiers); | ||||
| @ -2511,7 +2511,7 @@ static void __fire_sched_in_preempt_notifiers(struct task_struct *curr) | ||||
| 
 | ||||
| static __always_inline void fire_sched_in_preempt_notifiers(struct task_struct *curr) | ||||
| { | ||||
| 	if (static_key_false(&preempt_notifier_key)) | ||||
| 	if (static_branch_unlikely(&preempt_notifier_key)) | ||||
| 		__fire_sched_in_preempt_notifiers(curr); | ||||
| } | ||||
| 
 | ||||
| @ -2529,7 +2529,7 @@ static __always_inline void | ||||
| fire_sched_out_preempt_notifiers(struct task_struct *curr, | ||||
| 				 struct task_struct *next) | ||||
| { | ||||
| 	if (static_key_false(&preempt_notifier_key)) | ||||
| 	if (static_branch_unlikely(&preempt_notifier_key)) | ||||
| 		__fire_sched_out_preempt_notifiers(curr, next); | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user