diff options
author | Johannes Weiner <hannes@cmpxchg.org> | 2016-01-14 18:21:34 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-14 19:00:49 -0500 |
commit | ef12947c9c5a96af549c49f10e5503f0612a397c (patch) | |
tree | 451cedbe700b86411cc95c7bf27b02e967ff0fc9 | |
parent | 8e8ae645249b85c8ed6c178557f8db8613a6bcc7 (diff) |
mm: memcontrol: switch to the updated jump-label API
According to <linux/jump_label.h> the direct use of struct static_key is
deprecated. Update the socket and slab accounting code accordingly.
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: David S. Miller <davem@davemloft.net>
Reported-by: Jason Baron <jbaron@akamai.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | include/linux/memcontrol.h | 8 | ||||
-rw-r--r-- | mm/memcontrol.c | 12 | ||||
-rw-r--r-- | net/ipv4/tcp_memcontrol.c | 4 |
3 files changed, 12 insertions, 12 deletions
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index c5a51039df57..2292468f2a30 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h | |||
@@ -704,8 +704,8 @@ void sock_release_memcg(struct sock *sk); | |||
704 | bool mem_cgroup_charge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages); | 704 | bool mem_cgroup_charge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages); |
705 | void mem_cgroup_uncharge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages); | 705 | void mem_cgroup_uncharge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages); |
706 | #if defined(CONFIG_MEMCG) && defined(CONFIG_INET) | 706 | #if defined(CONFIG_MEMCG) && defined(CONFIG_INET) |
707 | extern struct static_key memcg_sockets_enabled_key; | 707 | extern struct static_key_false memcg_sockets_enabled_key; |
708 | #define mem_cgroup_sockets_enabled static_key_false(&memcg_sockets_enabled_key) | 708 | #define mem_cgroup_sockets_enabled static_branch_unlikely(&memcg_sockets_enabled_key) |
709 | static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg) | 709 | static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg) |
710 | { | 710 | { |
711 | #ifdef CONFIG_MEMCG_KMEM | 711 | #ifdef CONFIG_MEMCG_KMEM |
@@ -727,7 +727,7 @@ static inline bool mem_cgroup_under_socket_pressure(struct mem_cgroup *memcg) | |||
727 | #endif | 727 | #endif |
728 | 728 | ||
729 | #ifdef CONFIG_MEMCG_KMEM | 729 | #ifdef CONFIG_MEMCG_KMEM |
730 | extern struct static_key memcg_kmem_enabled_key; | 730 | extern struct static_key_false memcg_kmem_enabled_key; |
731 | 731 | ||
732 | extern int memcg_nr_cache_ids; | 732 | extern int memcg_nr_cache_ids; |
733 | void memcg_get_cache_ids(void); | 733 | void memcg_get_cache_ids(void); |
@@ -743,7 +743,7 @@ void memcg_put_cache_ids(void); | |||
743 | 743 | ||
744 | static inline bool memcg_kmem_enabled(void) | 744 | static inline bool memcg_kmem_enabled(void) |
745 | { | 745 | { |
746 | return static_key_false(&memcg_kmem_enabled_key); | 746 | return static_branch_unlikely(&memcg_kmem_enabled_key); |
747 | } | 747 | } |
748 | 748 | ||
749 | static inline bool memcg_kmem_is_active(struct mem_cgroup *memcg) | 749 | static inline bool memcg_kmem_is_active(struct mem_cgroup *memcg) |
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index df7f144a5a4b..54eae4f19d80 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c | |||
@@ -346,7 +346,7 @@ void memcg_put_cache_ids(void) | |||
346 | * conditional to this static branch, we'll have to allow modules that does | 346 | * conditional to this static branch, we'll have to allow modules that does |
347 | * kmem_cache_alloc and the such to see this symbol as well | 347 | * kmem_cache_alloc and the such to see this symbol as well |
348 | */ | 348 | */ |
349 | struct static_key memcg_kmem_enabled_key; | 349 | DEFINE_STATIC_KEY_FALSE(memcg_kmem_enabled_key); |
350 | EXPORT_SYMBOL(memcg_kmem_enabled_key); | 350 | EXPORT_SYMBOL(memcg_kmem_enabled_key); |
351 | 351 | ||
352 | #endif /* CONFIG_MEMCG_KMEM */ | 352 | #endif /* CONFIG_MEMCG_KMEM */ |
@@ -2907,7 +2907,7 @@ static int memcg_activate_kmem(struct mem_cgroup *memcg, | |||
2907 | err = page_counter_limit(&memcg->kmem, nr_pages); | 2907 | err = page_counter_limit(&memcg->kmem, nr_pages); |
2908 | VM_BUG_ON(err); | 2908 | VM_BUG_ON(err); |
2909 | 2909 | ||
2910 | static_key_slow_inc(&memcg_kmem_enabled_key); | 2910 | static_branch_inc(&memcg_kmem_enabled_key); |
2911 | /* | 2911 | /* |
2912 | * A memory cgroup is considered kmem-active as soon as it gets | 2912 | * A memory cgroup is considered kmem-active as soon as it gets |
2913 | * kmemcg_id. Setting the id after enabling static branching will | 2913 | * kmemcg_id. Setting the id after enabling static branching will |
@@ -3646,7 +3646,7 @@ static void memcg_destroy_kmem(struct mem_cgroup *memcg) | |||
3646 | { | 3646 | { |
3647 | if (memcg->kmem_acct_activated) { | 3647 | if (memcg->kmem_acct_activated) { |
3648 | memcg_destroy_kmem_caches(memcg); | 3648 | memcg_destroy_kmem_caches(memcg); |
3649 | static_key_slow_dec(&memcg_kmem_enabled_key); | 3649 | static_branch_dec(&memcg_kmem_enabled_key); |
3650 | WARN_ON(page_counter_read(&memcg->kmem)); | 3650 | WARN_ON(page_counter_read(&memcg->kmem)); |
3651 | } | 3651 | } |
3652 | tcp_destroy_cgroup(memcg); | 3652 | tcp_destroy_cgroup(memcg); |
@@ -4282,7 +4282,7 @@ mem_cgroup_css_online(struct cgroup_subsys_state *css) | |||
4282 | 4282 | ||
4283 | #ifdef CONFIG_INET | 4283 | #ifdef CONFIG_INET |
4284 | if (cgroup_subsys_on_dfl(memory_cgrp_subsys) && !cgroup_memory_nosocket) | 4284 | if (cgroup_subsys_on_dfl(memory_cgrp_subsys) && !cgroup_memory_nosocket) |
4285 | static_key_slow_inc(&memcg_sockets_enabled_key); | 4285 | static_branch_inc(&memcg_sockets_enabled_key); |
4286 | #endif | 4286 | #endif |
4287 | 4287 | ||
4288 | /* | 4288 | /* |
@@ -4333,7 +4333,7 @@ static void mem_cgroup_css_free(struct cgroup_subsys_state *css) | |||
4333 | memcg_destroy_kmem(memcg); | 4333 | memcg_destroy_kmem(memcg); |
4334 | #ifdef CONFIG_INET | 4334 | #ifdef CONFIG_INET |
4335 | if (cgroup_subsys_on_dfl(memory_cgrp_subsys) && !cgroup_memory_nosocket) | 4335 | if (cgroup_subsys_on_dfl(memory_cgrp_subsys) && !cgroup_memory_nosocket) |
4336 | static_key_slow_dec(&memcg_sockets_enabled_key); | 4336 | static_branch_dec(&memcg_sockets_enabled_key); |
4337 | #endif | 4337 | #endif |
4338 | __mem_cgroup_free(memcg); | 4338 | __mem_cgroup_free(memcg); |
4339 | } | 4339 | } |
@@ -5557,7 +5557,7 @@ void mem_cgroup_replace_page(struct page *oldpage, struct page *newpage) | |||
5557 | 5557 | ||
5558 | #ifdef CONFIG_INET | 5558 | #ifdef CONFIG_INET |
5559 | 5559 | ||
5560 | struct static_key memcg_sockets_enabled_key; | 5560 | DEFINE_STATIC_KEY_FALSE(memcg_sockets_enabled_key); |
5561 | EXPORT_SYMBOL(memcg_sockets_enabled_key); | 5561 | EXPORT_SYMBOL(memcg_sockets_enabled_key); |
5562 | 5562 | ||
5563 | void sock_update_memcg(struct sock *sk) | 5563 | void sock_update_memcg(struct sock *sk) |
diff --git a/net/ipv4/tcp_memcontrol.c b/net/ipv4/tcp_memcontrol.c index 9a22e2dfd64a..18bc7f745e9c 100644 --- a/net/ipv4/tcp_memcontrol.c +++ b/net/ipv4/tcp_memcontrol.c | |||
@@ -34,7 +34,7 @@ void tcp_destroy_cgroup(struct mem_cgroup *memcg) | |||
34 | return; | 34 | return; |
35 | 35 | ||
36 | if (memcg->tcp_mem.active) | 36 | if (memcg->tcp_mem.active) |
37 | static_key_slow_dec(&memcg_sockets_enabled_key); | 37 | static_branch_dec(&memcg_sockets_enabled_key); |
38 | } | 38 | } |
39 | 39 | ||
40 | static int tcp_update_limit(struct mem_cgroup *memcg, unsigned long nr_pages) | 40 | static int tcp_update_limit(struct mem_cgroup *memcg, unsigned long nr_pages) |
@@ -65,7 +65,7 @@ static int tcp_update_limit(struct mem_cgroup *memcg, unsigned long nr_pages) | |||
65 | * because when this value change, the code to process it is not | 65 | * because when this value change, the code to process it is not |
66 | * patched in yet. | 66 | * patched in yet. |
67 | */ | 67 | */ |
68 | static_key_slow_inc(&memcg_sockets_enabled_key); | 68 | static_branch_inc(&memcg_sockets_enabled_key); |
69 | memcg->tcp_mem.active = true; | 69 | memcg->tcp_mem.active = true; |
70 | } | 70 | } |
71 | 71 | ||