Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next
[firefly-linux-kernel-4.4.55.git] / include / linux / shrinker.h
index f4aee75f00b19449e63c2a48b864e36f11b10ce7..4fcacd915d45adaf914c770f7d04f8b12b2a504a 100644 (file)
@@ -20,6 +20,9 @@ struct shrink_control {
 
        /* current node being shrunk (for NUMA aware shrinkers) */
        int nid;
+
+       /* current memcg being shrunk (for memcg aware shrinkers) */
+       struct mem_cgroup *memcg;
 };
 
 #define SHRINK_STOP (~0UL)
@@ -61,7 +64,8 @@ struct shrinker {
 #define DEFAULT_SEEKS 2 /* A good number if you don't know better. */
 
 /* Flags */
-#define SHRINKER_NUMA_AWARE (1 << 0)
+#define SHRINKER_NUMA_AWARE    (1 << 0)
+#define SHRINKER_MEMCG_AWARE   (1 << 1)
 
 extern int register_shrinker(struct shrinker *);
 extern void unregister_shrinker(struct shrinker *);