Lines Matching defs:shrinker
6 #include <linux/shrinker.h>
16 static unsigned long shrinker_count_objects(struct shrinker *shrinker,
24 if (nid == 0 || (shrinker->flags & SHRINKER_NUMA_AWARE)) {
31 nr = shrinker->count_objects(shrinker, &sc);
47 struct shrinker *shrinker = m->private;
65 memcg_aware = shrinker->flags & SHRINKER_MEMCG_AWARE;
72 total = shrinker_count_objects(shrinker,
112 struct shrinker *shrinker = file->private_data;
136 if (shrinker->flags & SHRINKER_MEMCG_AWARE) {
160 shrinker->scan_objects(shrinker, &sc);
174 int shrinker_debugfs_add(struct shrinker *shrinker)
189 shrinker->debugfs_id = id;
191 snprintf(buf, sizeof(buf), "%s-%d", shrinker->name, id);
199 shrinker->debugfs_entry = entry;
201 debugfs_create_file("count", 0440, entry, shrinker,
203 debugfs_create_file("scan", 0220, entry, shrinker,
208 int shrinker_debugfs_rename(struct shrinker *shrinker, const char *fmt, ...)
225 old = shrinker->name;
226 shrinker->name = new;
228 if (shrinker->debugfs_entry) {
229 snprintf(buf, sizeof(buf), "%s-%d", shrinker->name,
230 shrinker->debugfs_id);
233 shrinker->debugfs_entry,
238 shrinker->debugfs_entry = entry;
249 struct dentry *shrinker_debugfs_detach(struct shrinker *shrinker,
252 struct dentry *entry = shrinker->debugfs_entry;
256 kfree_const(shrinker->name);
257 shrinker->name = NULL;
259 *debugfs_id = entry ? shrinker->debugfs_id : -1;
260 shrinker->debugfs_entry = NULL;
273 struct shrinker *shrinker;
277 dentry = debugfs_create_dir("shrinker", NULL);
284 list_for_each_entry(shrinker, &shrinker_list, list)
285 if (!shrinker->debugfs_entry) {
286 ret = shrinker_debugfs_add(shrinker);