Lines Matching refs:lru
45 struct list_lru_one lru;
59 void list_lru_destroy(struct list_lru *lru);
60 int __list_lru_init(struct list_lru *lru, bool memcg_aware,
63 #define list_lru_init(lru) \
64 __list_lru_init((lru), false, NULL, NULL)
65 #define list_lru_init_key(lru, key) \
66 __list_lru_init((lru), false, (key), NULL)
67 #define list_lru_init_memcg(lru, shrinker) \
68 __list_lru_init((lru), true, NULL, shrinker)
70 int memcg_list_lru_alloc(struct mem_cgroup *memcg, struct list_lru *lru,
75 * list_lru_add: add an element to the lru list's tail
76 * @list_lru: the lru pointer
90 bool list_lru_add(struct list_lru *lru, struct list_head *item);
93 * list_lru_del: delete an element to the lru list
94 * @list_lru: the lru pointer
103 bool list_lru_del(struct list_lru *lru, struct list_head *item);
106 * list_lru_count_one: return the number of objects currently held by @lru
107 * @lru: the lru pointer.
115 unsigned long list_lru_count_one(struct list_lru *lru,
117 unsigned long list_lru_count_node(struct list_lru *lru, int nid);
119 static inline unsigned long list_lru_shrink_count(struct list_lru *lru,
122 return list_lru_count_one(lru, sc->nid, sc->memcg);
125 static inline unsigned long list_lru_count(struct list_lru *lru)
131 count += list_lru_count_node(lru, nid);
145 * @lru: the lru pointer.
165 unsigned long list_lru_walk_one(struct list_lru *lru,
171 * @lru: the lru pointer.
182 unsigned long list_lru_walk_one_irq(struct list_lru *lru,
186 unsigned long list_lru_walk_node(struct list_lru *lru, int nid,
191 list_lru_shrink_walk(struct list_lru *lru, struct shrink_control *sc,
194 return list_lru_walk_one(lru, sc->nid, sc->memcg, isolate, cb_arg,
199 list_lru_shrink_walk_irq(struct list_lru *lru, struct shrink_control *sc,
202 return list_lru_walk_one_irq(lru, sc->nid, sc->memcg, isolate, cb_arg,
207 list_lru_walk(struct list_lru *lru, list_lru_walk_cb isolate,
214 isolated += list_lru_walk_node(lru, nid, isolate,