Commit f8d66542 authored by Hirokazu Takahashi's avatar Hirokazu Takahashi Committed by Linus Torvalds

memcg: add mem_cgroup_disabled()

We check mem_cgroup is disabled or not by checking
mem_cgroup_subsys.disabled.  I think it has more references than expected,
now.

replacing
   if (mem_cgroup_subsys.disabled)
with
   if (mem_cgroup_disabled())

give us good look, I think.

[kamezawa.hiroyu@jp.fujitsu.com: fix typo]
Signed-off-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Li Zefan <lizf@cn.fujitsu.com>
Cc: Balbir Singh <balbir@in.ibm.com>
Cc: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 08e552c6
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#ifndef _LINUX_MEMCONTROL_H #ifndef _LINUX_MEMCONTROL_H
#define _LINUX_MEMCONTROL_H #define _LINUX_MEMCONTROL_H
#include <linux/cgroup.h>
struct mem_cgroup; struct mem_cgroup;
struct page_cgroup; struct page_cgroup;
struct page; struct page;
...@@ -87,6 +87,14 @@ extern long mem_cgroup_calc_reclaim(struct mem_cgroup *mem, struct zone *zone, ...@@ -87,6 +87,14 @@ extern long mem_cgroup_calc_reclaim(struct mem_cgroup *mem, struct zone *zone,
#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP #ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP
extern int do_swap_account; extern int do_swap_account;
#endif #endif
static inline bool mem_cgroup_disabled(void)
{
if (mem_cgroup_subsys.disabled)
return true;
return false;
}
#else /* CONFIG_CGROUP_MEM_RES_CTLR */ #else /* CONFIG_CGROUP_MEM_RES_CTLR */
struct mem_cgroup; struct mem_cgroup;
...@@ -214,6 +222,11 @@ static inline long mem_cgroup_calc_reclaim(struct mem_cgroup *mem, ...@@ -214,6 +222,11 @@ static inline long mem_cgroup_calc_reclaim(struct mem_cgroup *mem,
{ {
return 0; return 0;
} }
static inline bool mem_cgroup_disabled(void)
{
return true;
}
#endif /* CONFIG_CGROUP_MEM_CONT */ #endif /* CONFIG_CGROUP_MEM_CONT */
#endif /* _LINUX_MEMCONTROL_H */ #endif /* _LINUX_MEMCONTROL_H */
......
...@@ -279,7 +279,7 @@ void mem_cgroup_del_lru_list(struct page *page, enum lru_list lru) ...@@ -279,7 +279,7 @@ void mem_cgroup_del_lru_list(struct page *page, enum lru_list lru)
struct mem_cgroup *mem; struct mem_cgroup *mem;
struct mem_cgroup_per_zone *mz; struct mem_cgroup_per_zone *mz;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
pc = lookup_page_cgroup(page); pc = lookup_page_cgroup(page);
/* can happen while we handle swapcache. */ /* can happen while we handle swapcache. */
...@@ -302,7 +302,7 @@ void mem_cgroup_rotate_lru_list(struct page *page, enum lru_list lru) ...@@ -302,7 +302,7 @@ void mem_cgroup_rotate_lru_list(struct page *page, enum lru_list lru)
struct mem_cgroup_per_zone *mz; struct mem_cgroup_per_zone *mz;
struct page_cgroup *pc; struct page_cgroup *pc;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
pc = lookup_page_cgroup(page); pc = lookup_page_cgroup(page);
...@@ -319,7 +319,7 @@ void mem_cgroup_add_lru_list(struct page *page, enum lru_list lru) ...@@ -319,7 +319,7 @@ void mem_cgroup_add_lru_list(struct page *page, enum lru_list lru)
struct page_cgroup *pc; struct page_cgroup *pc;
struct mem_cgroup_per_zone *mz; struct mem_cgroup_per_zone *mz;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
pc = lookup_page_cgroup(page); pc = lookup_page_cgroup(page);
/* barrier to sync with "charge" */ /* barrier to sync with "charge" */
...@@ -344,7 +344,7 @@ static void mem_cgroup_lru_fixup(struct page *page) ...@@ -344,7 +344,7 @@ static void mem_cgroup_lru_fixup(struct page *page)
void mem_cgroup_move_lists(struct page *page, void mem_cgroup_move_lists(struct page *page,
enum lru_list from, enum lru_list to) enum lru_list from, enum lru_list to)
{ {
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
mem_cgroup_del_lru_list(page, from); mem_cgroup_del_lru_list(page, from);
mem_cgroup_add_lru_list(page, to); mem_cgroup_add_lru_list(page, to);
...@@ -731,7 +731,7 @@ static int mem_cgroup_charge_common(struct page *page, struct mm_struct *mm, ...@@ -731,7 +731,7 @@ static int mem_cgroup_charge_common(struct page *page, struct mm_struct *mm,
int mem_cgroup_newpage_charge(struct page *page, int mem_cgroup_newpage_charge(struct page *page,
struct mm_struct *mm, gfp_t gfp_mask) struct mm_struct *mm, gfp_t gfp_mask)
{ {
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
if (PageCompound(page)) if (PageCompound(page))
return 0; return 0;
...@@ -753,7 +753,7 @@ int mem_cgroup_newpage_charge(struct page *page, ...@@ -753,7 +753,7 @@ int mem_cgroup_newpage_charge(struct page *page,
int mem_cgroup_cache_charge(struct page *page, struct mm_struct *mm, int mem_cgroup_cache_charge(struct page *page, struct mm_struct *mm,
gfp_t gfp_mask) gfp_t gfp_mask)
{ {
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
if (PageCompound(page)) if (PageCompound(page))
return 0; return 0;
...@@ -799,7 +799,7 @@ int mem_cgroup_try_charge_swapin(struct mm_struct *mm, ...@@ -799,7 +799,7 @@ int mem_cgroup_try_charge_swapin(struct mm_struct *mm,
struct mem_cgroup *mem; struct mem_cgroup *mem;
swp_entry_t ent; swp_entry_t ent;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
if (!do_swap_account) if (!do_swap_account)
...@@ -833,7 +833,7 @@ int mem_cgroup_cache_charge_swapin(struct page *page, ...@@ -833,7 +833,7 @@ int mem_cgroup_cache_charge_swapin(struct page *page,
{ {
int ret = 0; int ret = 0;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
if (unlikely(!mm)) if (unlikely(!mm))
mm = &init_mm; mm = &init_mm;
...@@ -880,7 +880,7 @@ void mem_cgroup_commit_charge_swapin(struct page *page, struct mem_cgroup *ptr) ...@@ -880,7 +880,7 @@ void mem_cgroup_commit_charge_swapin(struct page *page, struct mem_cgroup *ptr)
{ {
struct page_cgroup *pc; struct page_cgroup *pc;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
if (!ptr) if (!ptr)
return; return;
...@@ -909,7 +909,7 @@ void mem_cgroup_commit_charge_swapin(struct page *page, struct mem_cgroup *ptr) ...@@ -909,7 +909,7 @@ void mem_cgroup_commit_charge_swapin(struct page *page, struct mem_cgroup *ptr)
void mem_cgroup_cancel_charge_swapin(struct mem_cgroup *mem) void mem_cgroup_cancel_charge_swapin(struct mem_cgroup *mem)
{ {
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
if (!mem) if (!mem)
return; return;
...@@ -930,7 +930,7 @@ __mem_cgroup_uncharge_common(struct page *page, enum charge_type ctype) ...@@ -930,7 +930,7 @@ __mem_cgroup_uncharge_common(struct page *page, enum charge_type ctype)
struct mem_cgroup *mem = NULL; struct mem_cgroup *mem = NULL;
struct mem_cgroup_per_zone *mz; struct mem_cgroup_per_zone *mz;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return NULL; return NULL;
if (PageSwapCache(page)) if (PageSwapCache(page))
...@@ -1049,7 +1049,7 @@ int mem_cgroup_prepare_migration(struct page *page, struct mem_cgroup **ptr) ...@@ -1049,7 +1049,7 @@ int mem_cgroup_prepare_migration(struct page *page, struct mem_cgroup **ptr)
struct mem_cgroup *mem = NULL; struct mem_cgroup *mem = NULL;
int ret = 0; int ret = 0;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
pc = lookup_page_cgroup(page); pc = lookup_page_cgroup(page);
...@@ -1131,7 +1131,7 @@ int mem_cgroup_shrink_usage(struct mm_struct *mm, gfp_t gfp_mask) ...@@ -1131,7 +1131,7 @@ int mem_cgroup_shrink_usage(struct mm_struct *mm, gfp_t gfp_mask)
int progress = 0; int progress = 0;
int retry = MEM_CGROUP_RECLAIM_RETRIES; int retry = MEM_CGROUP_RECLAIM_RETRIES;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return 0; return 0;
if (!mm) if (!mm)
return 0; return 0;
...@@ -1697,7 +1697,7 @@ static void mem_cgroup_put(struct mem_cgroup *mem) ...@@ -1697,7 +1697,7 @@ static void mem_cgroup_put(struct mem_cgroup *mem)
#ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP #ifdef CONFIG_CGROUP_MEM_RES_CTLR_SWAP
static void __init enable_swap_cgroup(void) static void __init enable_swap_cgroup(void)
{ {
if (!mem_cgroup_subsys.disabled && really_do_swap_account) if (!mem_cgroup_disabled() && really_do_swap_account)
do_swap_account = 1; do_swap_account = 1;
} }
#else #else
......
...@@ -74,7 +74,7 @@ void __init page_cgroup_init(void) ...@@ -74,7 +74,7 @@ void __init page_cgroup_init(void)
int nid, fail; int nid, fail;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
for_each_online_node(nid) { for_each_online_node(nid) {
...@@ -247,7 +247,7 @@ void __init page_cgroup_init(void) ...@@ -247,7 +247,7 @@ void __init page_cgroup_init(void)
unsigned long pfn; unsigned long pfn;
int fail = 0; int fail = 0;
if (mem_cgroup_subsys.disabled) if (mem_cgroup_disabled())
return; return;
for (pfn = 0; !fail && pfn < max_pfn; pfn += PAGES_PER_SECTION) { for (pfn = 0; !fail && pfn < max_pfn; pfn += PAGES_PER_SECTION) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment