mirror of https://gitee.com/openkylin/linux.git
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: 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
64ac4940d5
commit
f98bafa06a
|
@ -406,7 +406,7 @@ struct mm_struct {
|
|||
spinlock_t ioctx_lock;
|
||||
struct kioctx_table __rcu *ioctx_table;
|
||||
#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
|
||||
|
|
|
@ -2967,7 +2967,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
|
||||
|
@ -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)
|
||||
{
|
||||
}
|
||||
#endif /* CONFIG_MM_OWNER */
|
||||
#endif /* CONFIG_MEMCG */
|
||||
|
||||
static inline unsigned long task_rlimit(const struct task_struct *tsk,
|
||||
unsigned int limit)
|
||||
|
|
|
@ -933,7 +933,6 @@ config RESOURCE_COUNTERS
|
|||
config MEMCG
|
||||
bool "Memory Resource Controller for Control Groups"
|
||||
depends on RESOURCE_COUNTERS
|
||||
select MM_OWNER
|
||||
select EVENTFD
|
||||
help
|
||||
Provides a memory resource controller that manages both anonymous
|
||||
|
@ -951,9 +950,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
|
||||
|
@ -1179,9 +1175,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
|
||||
|
|
|
@ -352,7 +352,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.
|
||||
*/
|
||||
|
@ -434,7 +434,7 @@ void mm_update_next_owner(struct mm_struct *mm)
|
|||
task_unlock(c);
|
||||
put_task_struct(c);
|
||||
}
|
||||
#endif /* CONFIG_MM_OWNER */
|
||||
#endif /* CONFIG_MEMCG */
|
||||
|
||||
/*
|
||||
* Turn us into a lazy TLB process if we
|
||||
|
|
|
@ -1099,12 +1099,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