diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-21 20:32:08 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-01-21 20:32:08 (GMT) |
commit | eae21770b4fed5597623aad0d618190fa60426ff (patch) | |
tree | 23c59fb7a33e93a79525e2b10d56df54d40049d1 /init | |
parent | e9f57ebcba563e0cd532926cab83c92bb4d79360 (diff) | |
parent | 9f273c24ec5f4a6f785bb83e931b3808a07b459e (diff) | |
download | linux-eae21770b4fed5597623aad0d618190fa60426ff.tar.xz |
Merge branch 'akpm' (patches from Andrew)
Merge third patch-bomb from Andrew Morton:
"I'm pretty much done for -rc1 now:
- the rest of MM, basically
- lib/ updates
- checkpatch, epoll, hfs, fatfs, ptrace, coredump, exit
- cpu_mask simplifications
- kexec, rapidio, MAINTAINERS etc, etc.
- more dma-mapping cleanups/simplifications from hch"
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (109 commits)
MAINTAINERS: add/fix git URLs for various subsystems
mm: memcontrol: add "sock" to cgroup2 memory.stat
mm: memcontrol: basic memory statistics in cgroup2 memory controller
mm: memcontrol: do not uncharge old page in page cache replacement
Documentation: cgroup: add memory.swap.{current,max} description
mm: free swap cache aggressively if memcg swap is full
mm: vmscan: do not scan anon pages if memcg swap limit is hit
swap.h: move memcg related stuff to the end of the file
mm: memcontrol: replace mem_cgroup_lruvec_online with mem_cgroup_online
mm: vmscan: pass memcg to get_scan_count()
mm: memcontrol: charge swap to cgroup2
mm: memcontrol: clean up alloc, online, offline, free functions
mm: memcontrol: flatten struct cg_proto
mm: memcontrol: rein in the CONFIG space madness
net: drop tcp_memcontrol.c
mm: memcontrol: introduce CONFIG_MEMCG_LEGACY_KMEM
mm: memcontrol: allow to disable kmem accounting for cgroup2
mm: memcontrol: account "kmem" consumers in cgroup2 memory controller
mm: memcontrol: move kmem accounting code to CONFIG_MEMCG
mm: memcontrol: separate kmem code from legacy tcp accounting code
...
Diffstat (limited to 'init')
-rw-r--r-- | init/Kconfig | 23 | ||||
-rw-r--r-- | init/do_mounts.h | 4 | ||||
-rw-r--r-- | init/do_mounts_initrd.c | 6 | ||||
-rw-r--r-- | init/main.c | 10 |
4 files changed, 18 insertions, 25 deletions
diff --git a/init/Kconfig b/init/Kconfig index 5b86082..2232080 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -964,17 +964,6 @@ config MEMCG_SWAP_ENABLED For those who want to have the feature enabled by default should select this option (if, for some reason, they need to disable it then swapaccount=0 does the trick). -config MEMCG_KMEM - bool "Memory Resource Controller Kernel Memory accounting" - depends on MEMCG - depends on SLUB || SLAB - help - The Kernel Memory extension for Memory Resource Controller can limit - the amount of memory used by kernel objects in the system. Those are - fundamentally different from the entities handled by the standard - Memory Controller, which are page-based, and can be swapped. Users of - the kmem extension can use it to guarantee that no group of processes - will ever exhaust kernel resources alone. config BLK_CGROUP bool "IO controller" @@ -1071,6 +1060,11 @@ config CGROUP_FREEZER Provides a way to freeze and unfreeze all tasks in a cgroup. + This option affects the ORIGINAL cgroup interface. The cgroup2 memory + controller includes important in-kernel memory consumers per default. + + If you're using cgroup2, say N. + config CGROUP_HUGETLB bool "HugeTLB controller" depends on HUGETLB_PAGE @@ -1182,10 +1176,9 @@ config USER_NS to provide different user info for different servers. When user namespaces are enabled in the kernel it is - recommended that the MEMCG and MEMCG_KMEM options also be - enabled and that user-space use the memory control groups to - limit the amount of memory a memory unprivileged users can - use. + recommended that the MEMCG option also be enabled and that + user-space use the memory control groups to limit the amount + of memory a memory unprivileged users can use. If unsure, say N. diff --git a/init/do_mounts.h b/init/do_mounts.h index f5b978a..067af1d 100644 --- a/init/do_mounts.h +++ b/init/do_mounts.h @@ -57,11 +57,11 @@ static inline int rd_load_image(char *from) { return 0; } #ifdef CONFIG_BLK_DEV_INITRD -int __init initrd_load(void); +bool __init initrd_load(void); #else -static inline int initrd_load(void) { return 0; } +static inline bool initrd_load(void) { return false; } #endif diff --git a/init/do_mounts_initrd.c b/init/do_mounts_initrd.c index 3e0878e..a1000ca 100644 --- a/init/do_mounts_initrd.c +++ b/init/do_mounts_initrd.c @@ -116,7 +116,7 @@ static void __init handle_initrd(void) } } -int __init initrd_load(void) +bool __init initrd_load(void) { if (mount_initrd) { create_dev("/dev/ram", Root_RAM0); @@ -129,9 +129,9 @@ int __init initrd_load(void) if (rd_load_image("/initrd.image") && ROOT_DEV != Root_RAM0) { sys_unlink("/initrd.image"); handle_initrd(); - return 1; + return true; } } sys_unlink("/initrd.image"); - return 0; + return false; } diff --git a/init/main.c b/init/main.c index c6ebefa..58c9e37 100644 --- a/init/main.c +++ b/init/main.c @@ -164,10 +164,10 @@ static const char *panic_later, *panic_param; extern const struct obs_kernel_param __setup_start[], __setup_end[]; -static int __init obsolete_checksetup(char *line) +static bool __init obsolete_checksetup(char *line) { const struct obs_kernel_param *p; - int had_early_param = 0; + bool had_early_param = false; p = __setup_start; do { @@ -179,13 +179,13 @@ static int __init obsolete_checksetup(char *line) * Keep iterating, as we can have early * params and __setups of same names 8( */ if (line[n] == '\0' || line[n] == '=') - had_early_param = 1; + had_early_param = true; } else if (!p->setup_func) { pr_warn("Parameter %s is obsolete, ignored\n", p->str); - return 1; + return true; } else if (p->setup_func(line + n)) - return 1; + return true; } p++; } while (p < __setup_end); |