aboutsummaryrefslogtreecommitdiffstats
path: root/lib/once.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/once.c')
-rw-r--r--lib/once.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/once.c b/lib/once.c
index bfb7420d0de3..8b7d6235217e 100644
--- a/lib/once.c
+++ b/lib/once.c
@@ -6,7 +6,7 @@
6 6
7struct once_work { 7struct once_work {
8 struct work_struct work; 8 struct work_struct work;
9 struct static_key *key; 9 struct static_key_true *key;
10}; 10};
11 11
12static void once_deferred(struct work_struct *w) 12static void once_deferred(struct work_struct *w)
@@ -15,11 +15,11 @@ static void once_deferred(struct work_struct *w)
15 15
16 work = container_of(w, struct once_work, work); 16 work = container_of(w, struct once_work, work);
17 BUG_ON(!static_key_enabled(work->key)); 17 BUG_ON(!static_key_enabled(work->key));
18 static_key_slow_dec(work->key); 18 static_branch_disable(work->key);
19 kfree(work); 19 kfree(work);
20} 20}
21 21
22static void once_disable_jump(struct static_key *key) 22static void once_disable_jump(struct static_key_true *key)
23{ 23{
24 struct once_work *w; 24 struct once_work *w;
25 25
@@ -52,7 +52,7 @@ bool __do_once_start(bool *done, unsigned long *flags)
52} 52}
53EXPORT_SYMBOL(__do_once_start); 53EXPORT_SYMBOL(__do_once_start);
54 54
55void __do_once_done(bool *done, struct static_key *once_key, 55void __do_once_done(bool *done, struct static_key_true *once_key,
56 unsigned long *flags) 56 unsigned long *flags)
57 __releases(once_lock) 57 __releases(once_lock)
58{ 58{