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. Change-Id: I07980d9557cef16a102ed293bc4a8ad1f9302777 Signed-off-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Michal Hocko <mhocko@suse.cz> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
7c961550ca
commit
df63f79c92
|
@ -401,7 +401,7 @@ struct mm_struct {
|
|||
spinlock_t ioctx_lock;
|
||||
struct hlist_head ioctx_list;
|
||||
#endif
|
||||
#ifdef CONFIG_MM_OWNER
|
||||
#ifdef CONFIG_MEMCG
|
||||
/*
|
||||
* "owner" points to a task that is regarded as the canonical
|
||||
* user/owner of this mm. All of the following must be true in
|
||||
|
|
|
@ -3008,7 +3008,7 @@ static inline void inc_syscw(struct task_struct *tsk)
|
|||
#define TASK_SIZE_OF(tsk) TASK_SIZE
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MM_OWNER
|
||||
#ifdef CONFIG_MEMCG
|
||||
extern void mm_update_next_owner(struct mm_struct *mm);
|
||||
extern void mm_init_owner(struct mm_struct *mm, struct task_struct *p);
|
||||
#else
|
||||
|
@ -3019,7 +3019,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)
|
||||
{
|
||||
}
|
||||
#endif /* CONFIG_MM_OWNER */
|
||||
#endif /* CONFIG_MEMCG */
|
||||
|
||||
static inline unsigned long task_rlimit(const struct task_struct *tsk,
|
||||
unsigned int limit)
|
||||
|
|
|
@ -876,7 +876,6 @@ config RESOURCE_COUNTERS
|
|||
config MEMCG
|
||||
bool "Memory Resource Controller for Control Groups"
|
||||
depends on RESOURCE_COUNTERS
|
||||
select MM_OWNER
|
||||
help
|
||||
Provides a memory resource controller that manages both anonymous
|
||||
memory and page cache. (See Documentation/cgroups/memory.txt)
|
||||
|
@ -893,9 +892,6 @@ config MEMCG
|
|||
disable memory resource controller and you can avoid overheads.
|
||||
(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
|
||||
bool "Memory Resource Controller Swap Extension"
|
||||
depends on MEMCG && SWAP
|
||||
|
@ -1158,9 +1154,6 @@ config SCHED_AUTOGROUP
|
|||
desktop applications. Task group autogeneration is currently based
|
||||
upon task session.
|
||||
|
||||
config MM_OWNER
|
||||
bool
|
||||
|
||||
config SYSFS_DEPRECATED
|
||||
bool "Enable deprecated sysfs features to support old userspace tools"
|
||||
depends on SYSFS
|
||||
|
|
|
@ -363,7 +363,7 @@ int disallow_signal(int sig)
|
|||
|
||||
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.
|
||||
*/
|
||||
|
@ -449,7 +449,7 @@ assign_new_owner:
|
|||
task_unlock(c);
|
||||
put_task_struct(c);
|
||||
}
|
||||
#endif /* CONFIG_MM_OWNER */
|
||||
#endif /* CONFIG_MEMCG */
|
||||
|
||||
/*
|
||||
* Turn us into a lazy TLB process if we
|
||||
|
|
|
@ -1170,12 +1170,12 @@ static void rt_mutex_init_task(struct task_struct *p)
|
|||
#endif
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MM_OWNER
|
||||
#ifdef CONFIG_MEMCG
|
||||
void mm_init_owner(struct mm_struct *mm, struct task_struct *p)
|
||||
{
|
||||
mm->owner = p;
|
||||
}
|
||||
#endif /* CONFIG_MM_OWNER */
|
||||
#endif /* CONFIG_MEMCG */
|
||||
|
||||
/*
|
||||
* Initialize POSIX timer handling for a single task.
|
||||
|
|
Loading…
Reference in New Issue