Lines Matching refs:shrinker_info
21 static inline void shrinker_unit_free(struct shrinker_info *info, int start)
41 static inline int shrinker_unit_alloc(struct shrinker_info *new,
42 struct shrinker_info *old, int nid)
65 struct shrinker_info *info;
70 info = rcu_dereference_protected(pn->shrinker_info, true);
73 rcu_assign_pointer(pn->shrinker_info, NULL);
79 struct shrinker_info *info;
92 rcu_assign_pointer(memcg->nodeinfo[nid]->shrinker_info, info);
104 static struct shrinker_info *shrinker_info_protected(struct mem_cgroup *memcg,
107 return rcu_dereference_protected(memcg->nodeinfo[nid]->shrinker_info,
114 struct shrinker_info *new, *old;
125 /* Already expanded this shrinker_info */
141 rcu_assign_pointer(pn->shrinker_info, new);
197 struct shrinker_info *info;
201 info = rcu_dereference(memcg->nodeinfo[nid]->shrinker_info);
253 struct shrinker_info *info;
258 info = rcu_dereference(memcg->nodeinfo[nid]->shrinker_info);
269 struct shrinker_info *info;
274 info = rcu_dereference(memcg->nodeinfo[nid]->shrinker_info);
288 struct shrinker_info *child_info, *parent_info;
295 /* Prevent from concurrent shrinker_info expand */
470 struct shrinker_info *info;
480 * The shrinker_info may be freed asynchronously via RCU in the
482 * to ensure the existence of the shrinker_info.
491 * shrinker_info.
508 * before calling do_shrink_slab(), the shrinker_info may be
510 * to reacquire the shrinker_info.
514 info = rcu_dereference(memcg->nodeinfo[nid]->shrinker_info);