diff options
author | Vladimir Davydov <vdavydov@parallels.com> | 2015-02-12 17:58:54 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-12 21:54:09 -0500 |
commit | cb731d6c62bbc2f890b08ea3d0386d5dad887326 (patch) | |
tree | 1c597a1018d8258585aa65b3c4872a9c5d177d46 /include/linux/mm.h | |
parent | 4101b624352fddb5ed72e7a1b6f8be8cffaa20fa (diff) |
vmscan: per memory cgroup slab shrinkers
This patch adds SHRINKER_MEMCG_AWARE flag. If a shrinker has this flag
set, it will be called per memory cgroup. The memory cgroup to scan
objects from is passed in shrink_control->memcg. If the memory cgroup
is NULL, a memcg aware shrinker is supposed to scan objects from the
global list. Unaware shrinkers are only called on global pressure with
memcg=NULL.
Signed-off-by: Vladimir Davydov <vdavydov@parallels.com>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@suse.cz>
Cc: Greg Thelen <gthelen@google.com>
Cc: Glauber Costa <glommer@gmail.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Christoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: David Rientjes <rientjes@google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/mm.h')
-rw-r--r-- | include/linux/mm.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/include/linux/mm.h b/include/linux/mm.h index a4d24f3c5430..af4ff88a11e0 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
@@ -2168,9 +2168,8 @@ int drop_caches_sysctl_handler(struct ctl_table *, int, | |||
2168 | void __user *, size_t *, loff_t *); | 2168 | void __user *, size_t *, loff_t *); |
2169 | #endif | 2169 | #endif |
2170 | 2170 | ||
2171 | unsigned long shrink_node_slabs(gfp_t gfp_mask, int nid, | 2171 | void drop_slab(void); |
2172 | unsigned long nr_scanned, | 2172 | void drop_slab_node(int nid); |
2173 | unsigned long nr_eligible); | ||
2174 | 2173 | ||
2175 | #ifndef CONFIG_MMU | 2174 | #ifndef CONFIG_MMU |
2176 | #define randomize_va_space 0 | 2175 | #define randomize_va_space 0 |