Commit f98bafa0 authored by Oleg Nesterov's avatar Oleg Nesterov Committed by Linus Torvalds

memcg: kill CONFIG_MM_OWNER

CONFIG_MM_OWNER makes no sense.  It is not user-selectable, it is only
selected by CONFIG_MEMCG automatically.  So we can kill this option in
init/Kconfig and do s/CONFIG_MM_OWNER/CONFIG_MEMCG/ globally.
Signed-off-by: default avatarOleg Nesterov <oleg@redhat.com>
Acked-by: default avatarMichal Hocko <mhocko@suse.cz>
Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 64ac4940
...@@ -406,7 +406,7 @@ struct mm_struct { ...@@ -406,7 +406,7 @@ struct mm_struct {
spinlock_t ioctx_lock; spinlock_t ioctx_lock;
struct kioctx_table __rcu *ioctx_table; struct kioctx_table __rcu *ioctx_table;
#endif #endif
#ifdef CONFIG_MM_OWNER #ifdef CONFIG_MEMCG
/* /*
* "owner" points to a task that is regarded as the canonical * "owner" points to a task that is regarded as the canonical
* user/owner of this mm. All of the following must be true in * user/owner of this mm. All of the following must be true in
......
...@@ -2967,7 +2967,7 @@ static inline void inc_syscw(struct task_struct *tsk) ...@@ -2967,7 +2967,7 @@ static inline void inc_syscw(struct task_struct *tsk)
#define TASK_SIZE_OF(tsk) TASK_SIZE #define TASK_SIZE_OF(tsk) TASK_SIZE
#endif #endif
#ifdef CONFIG_MM_OWNER #ifdef CONFIG_MEMCG
extern void mm_update_next_owner(struct mm_struct *mm); extern void mm_update_next_owner(struct mm_struct *mm);
extern void mm_init_owner(struct mm_struct *mm, struct task_struct *p); extern void mm_init_owner(struct mm_struct *mm, struct task_struct *p);
#else #else
...@@ -2978,7 +2978,7 @@ static inline void mm_update_next_owner(struct mm_struct *mm) ...@@ -2978,7 +2978,7 @@ static inline void mm_update_next_owner(struct mm_struct *mm)
static inline void mm_init_owner(struct mm_struct *mm, struct task_struct *p) static inline void mm_init_owner(struct mm_struct *mm, struct task_struct *p)
{ {
} }
#endif /* CONFIG_MM_OWNER */ #endif /* CONFIG_MEMCG */
static inline unsigned long task_rlimit(const struct task_struct *tsk, static inline unsigned long task_rlimit(const struct task_struct *tsk,
unsigned int limit) unsigned int limit)
......
...@@ -933,7 +933,6 @@ config RESOURCE_COUNTERS ...@@ -933,7 +933,6 @@ config RESOURCE_COUNTERS
config MEMCG config MEMCG
bool "Memory Resource Controller for Control Groups" bool "Memory Resource Controller for Control Groups"
depends on RESOURCE_COUNTERS depends on RESOURCE_COUNTERS
select MM_OWNER
select EVENTFD select EVENTFD
help help
Provides a memory resource controller that manages both anonymous Provides a memory resource controller that manages both anonymous
...@@ -951,9 +950,6 @@ config MEMCG ...@@ -951,9 +950,6 @@ config MEMCG
disable memory resource controller and you can avoid overheads. disable memory resource controller and you can avoid overheads.
(and lose benefits of memory resource controller) (and lose benefits of memory resource controller)
This config option also selects MM_OWNER config option, which
could in turn add some fork/exit overhead.
config MEMCG_SWAP config MEMCG_SWAP
bool "Memory Resource Controller Swap Extension" bool "Memory Resource Controller Swap Extension"
depends on MEMCG && SWAP depends on MEMCG && SWAP
...@@ -1179,9 +1175,6 @@ config SCHED_AUTOGROUP ...@@ -1179,9 +1175,6 @@ config SCHED_AUTOGROUP
desktop applications. Task group autogeneration is currently based desktop applications. Task group autogeneration is currently based
upon task session. upon task session.
config MM_OWNER
bool
config SYSFS_DEPRECATED config SYSFS_DEPRECATED
bool "Enable deprecated sysfs features to support old userspace tools" bool "Enable deprecated sysfs features to support old userspace tools"
depends on SYSFS depends on SYSFS
......
...@@ -352,7 +352,7 @@ int disallow_signal(int sig) ...@@ -352,7 +352,7 @@ int disallow_signal(int sig)
EXPORT_SYMBOL(disallow_signal); EXPORT_SYMBOL(disallow_signal);
#ifdef CONFIG_MM_OWNER #ifdef CONFIG_MEMCG
/* /*
* A task is exiting. If it owned this mm, find a new owner for the mm. * A task is exiting. If it owned this mm, find a new owner for the mm.
*/ */
...@@ -434,7 +434,7 @@ void mm_update_next_owner(struct mm_struct *mm) ...@@ -434,7 +434,7 @@ void mm_update_next_owner(struct mm_struct *mm)
task_unlock(c); task_unlock(c);
put_task_struct(c); put_task_struct(c);
} }
#endif /* CONFIG_MM_OWNER */ #endif /* CONFIG_MEMCG */
/* /*
* Turn us into a lazy TLB process if we * Turn us into a lazy TLB process if we
......
...@@ -1099,12 +1099,12 @@ static void rt_mutex_init_task(struct task_struct *p) ...@@ -1099,12 +1099,12 @@ static void rt_mutex_init_task(struct task_struct *p)
#endif #endif
} }
#ifdef CONFIG_MM_OWNER #ifdef CONFIG_MEMCG
void mm_init_owner(struct mm_struct *mm, struct task_struct *p) void mm_init_owner(struct mm_struct *mm, struct task_struct *p)
{ {
mm->owner = p; mm->owner = p;
} }
#endif /* CONFIG_MM_OWNER */ #endif /* CONFIG_MEMCG */
/* /*
* Initialize POSIX timer handling for a single task. * Initialize POSIX timer handling for a single task.
......
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