memcg_limited_groups_array_size, which defines the size of memcg_caches
arrays, sounds rather cumbersome. Also it doesn't point anyhow that
it's related to kmem/caches stuff. So let's rename it to
memcg_nr_cache_ids. It's concise and points us directly to
memcg_cache_id.
Also, rename kmem_limited_groups to memcg_cache_ida.
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>
#ifdef CONFIG_MEMCG_KMEM
extern struct static_key memcg_kmem_enabled_key;
#ifdef CONFIG_MEMCG_KMEM
extern struct static_key memcg_kmem_enabled_key;
-extern int memcg_limited_groups_array_size;
+extern int memcg_nr_cache_ids;
/*
* Helper macro to loop through all memcg-specific caches. Callers must still
/*
* Helper macro to loop through all memcg-specific caches. Callers must still
* the slab_mutex must be held when looping through those caches
*/
#define for_each_memcg_cache_index(_idx) \
* the slab_mutex must be held when looping through those caches
*/
#define for_each_memcg_cache_index(_idx) \
- for ((_idx) = 0; (_idx) < memcg_limited_groups_array_size; (_idx)++)
+ for ((_idx) = 0; (_idx) < memcg_nr_cache_ids; (_idx)++)
static inline bool memcg_kmem_enabled(void)
{
static inline bool memcg_kmem_enabled(void)
{
* memcgs, and none but the 200th is kmem-limited, we'd have to have a
* 200 entry array for that.
*
* memcgs, and none but the 200th is kmem-limited, we'd have to have a
* 200 entry array for that.
*
- * The current size of the caches array is stored in
- * memcg_limited_groups_array_size. It will double each time we have to
- * increase it.
+ * The current size of the caches array is stored in memcg_nr_cache_ids. It
+ * will double each time we have to increase it.
-static DEFINE_IDA(kmem_limited_groups);
-int memcg_limited_groups_array_size;
+static DEFINE_IDA(memcg_cache_ida);
+int memcg_nr_cache_ids;
/*
* MIN_SIZE is different than 1, because we would like to avoid going through
/*
* MIN_SIZE is different than 1, because we would like to avoid going through
- id = ida_simple_get(&kmem_limited_groups,
+ id = ida_simple_get(&memcg_cache_ida,
0, MEMCG_CACHES_MAX_SIZE, GFP_KERNEL);
if (id < 0)
return id;
0, MEMCG_CACHES_MAX_SIZE, GFP_KERNEL);
if (id < 0)
return id;
- if (id < memcg_limited_groups_array_size)
+ if (id < memcg_nr_cache_ids)
err = memcg_update_all_caches(size);
if (err) {
err = memcg_update_all_caches(size);
if (err) {
- ida_simple_remove(&kmem_limited_groups, id);
+ ida_simple_remove(&memcg_cache_ida, id);
static void memcg_free_cache_id(int id)
{
static void memcg_free_cache_id(int id)
{
- ida_simple_remove(&kmem_limited_groups, id);
+ ida_simple_remove(&memcg_cache_ida, id);
*/
void memcg_update_array_size(int num)
{
*/
void memcg_update_array_size(int num)
{
- memcg_limited_groups_array_size = num;
+ memcg_nr_cache_ids = num;
}
struct memcg_kmem_cache_create_work {
}
struct memcg_kmem_cache_create_work {
if (!memcg) {
size = offsetof(struct memcg_cache_params, memcg_caches);
if (!memcg) {
size = offsetof(struct memcg_cache_params, memcg_caches);
- size += memcg_limited_groups_array_size * sizeof(void *);
+ size += memcg_nr_cache_ids * sizeof(void *);
} else
size = sizeof(struct memcg_cache_params);
} else
size = sizeof(struct memcg_cache_params);
cur_params = s->memcg_params;
memcpy(new_params->memcg_caches, cur_params->memcg_caches,
cur_params = s->memcg_params;
memcpy(new_params->memcg_caches, cur_params->memcg_caches,
- memcg_limited_groups_array_size * sizeof(void *));
+ memcg_nr_cache_ids * sizeof(void *));
new_params->is_root_cache = true;
new_params->is_root_cache = true;