/Linux-v5.4/include/linux/ |
D | shrinker.h | 60 struct shrinker { struct 61 unsigned long (*count_objects)(struct shrinker *, argument 63 unsigned long (*scan_objects)(struct shrinker *, argument 90 extern int prealloc_shrinker(struct shrinker *shrinker); 91 extern void register_shrinker_prepared(struct shrinker *shrinker); 92 extern int register_shrinker(struct shrinker *shrinker); 93 extern void unregister_shrinker(struct shrinker *shrinker); 94 extern void free_prealloced_shrinker(struct shrinker *shrinker);
|
D | list_lru.h | 63 struct lock_class_key *key, struct shrinker *shrinker); 69 #define list_lru_init_memcg(lru, shrinker) \ argument 70 __list_lru_init((lru), true, NULL, shrinker)
|
/Linux-v5.4/drivers/gpu/drm/panfrost/ |
D | panfrost_gem_shrinker.c | 19 panfrost_gem_shrinker_count(struct shrinker *shrinker, struct shrink_control *sc) in panfrost_gem_shrinker_count() argument 22 container_of(shrinker, struct panfrost_device, shrinker); in panfrost_gem_shrinker_count() 54 panfrost_gem_shrinker_scan(struct shrinker *shrinker, struct shrink_control *sc) in panfrost_gem_shrinker_scan() argument 57 container_of(shrinker, struct panfrost_device, shrinker); in panfrost_gem_shrinker_scan() 91 pfdev->shrinker.count_objects = panfrost_gem_shrinker_count; in panfrost_gem_shrinker_init() 92 pfdev->shrinker.scan_objects = panfrost_gem_shrinker_scan; in panfrost_gem_shrinker_init() 93 pfdev->shrinker.seeks = DEFAULT_SEEKS; in panfrost_gem_shrinker_init() 94 WARN_ON(register_shrinker(&pfdev->shrinker)); in panfrost_gem_shrinker_init() 107 if (pfdev->shrinker.nr_deferred) { in panfrost_gem_shrinker_cleanup() 108 unregister_shrinker(&pfdev->shrinker); in panfrost_gem_shrinker_cleanup()
|
D | panfrost_device.h | 91 struct shrinker shrinker; member
|
/Linux-v5.4/drivers/gpu/drm/msm/ |
D | msm_gem_shrinker.c | 41 msm_gem_shrinker_count(struct shrinker *shrinker, struct shrink_control *sc) in msm_gem_shrinker_count() argument 44 container_of(shrinker, struct msm_drm_private, shrinker); in msm_gem_shrinker_count() 65 msm_gem_shrinker_scan(struct shrinker *shrinker, struct shrink_control *sc) in msm_gem_shrinker_scan() argument 68 container_of(shrinker, struct msm_drm_private, shrinker); in msm_gem_shrinker_scan() 140 priv->shrinker.count_objects = msm_gem_shrinker_count; in msm_gem_shrinker_init() 141 priv->shrinker.scan_objects = msm_gem_shrinker_scan; in msm_gem_shrinker_init() 142 priv->shrinker.seeks = DEFAULT_SEEKS; in msm_gem_shrinker_init() 143 WARN_ON(register_shrinker(&priv->shrinker)); in msm_gem_shrinker_init() 159 if (priv->shrinker.nr_deferred) { in msm_gem_shrinker_cleanup() 161 unregister_shrinker(&priv->shrinker); in msm_gem_shrinker_cleanup()
|
/Linux-v5.4/drivers/staging/android/ion/ |
D | ion_heap.c | 263 static unsigned long ion_heap_shrink_count(struct shrinker *shrinker, in ion_heap_shrink_count() argument 266 struct ion_heap *heap = container_of(shrinker, struct ion_heap, in ion_heap_shrink_count() 267 shrinker); in ion_heap_shrink_count() 278 static unsigned long ion_heap_shrink_scan(struct shrinker *shrinker, in ion_heap_shrink_scan() argument 281 struct ion_heap *heap = container_of(shrinker, struct ion_heap, in ion_heap_shrink_scan() 282 shrinker); in ion_heap_shrink_scan() 309 heap->shrinker.count_objects = ion_heap_shrink_count; in ion_heap_init_shrinker() 310 heap->shrinker.scan_objects = ion_heap_shrink_scan; in ion_heap_init_shrinker() 311 heap->shrinker.seeks = DEFAULT_SEEKS; in ion_heap_init_shrinker() 312 heap->shrinker.batch = 0; in ion_heap_init_shrinker() [all …]
|
D | ion.c | 551 objs = heap->shrinker.count_objects(&heap->shrinker, &sc); in debug_shrink_set() 555 heap->shrinker.scan_objects(&heap->shrinker, &sc); in debug_shrink_set() 568 objs = heap->shrinker.count_objects(&heap->shrinker, &sc); in debug_shrink_get() 618 if (heap->shrinker.count_objects && in ion_device_add_heap() 619 heap->shrinker.scan_objects) { in ion_device_add_heap()
|
D | ion.h | 149 struct shrinker shrinker; member
|
/Linux-v5.4/drivers/gpu/drm/i915/gem/ |
D | i915_gem_shrinker.c | 315 i915_gem_shrinker_count(struct shrinker *shrinker, struct shrink_control *sc) in i915_gem_shrinker_count() argument 318 container_of(shrinker, struct drm_i915_private, mm.shrinker); in i915_gem_shrinker_count() 335 i915->mm.shrinker.batch = in i915_gem_shrinker_count() 336 max((i915->mm.shrinker.batch + avg) >> 1, in i915_gem_shrinker_count() 344 i915_gem_shrinker_scan(struct shrinker *shrinker, struct shrink_control *sc) in i915_gem_shrinker_scan() argument 347 container_of(shrinker, struct drm_i915_private, mm.shrinker); in i915_gem_shrinker_scan() 464 i915->mm.shrinker.scan_objects = i915_gem_shrinker_scan; in i915_gem_driver_register__shrinker() 465 i915->mm.shrinker.count_objects = i915_gem_shrinker_count; in i915_gem_driver_register__shrinker() 466 i915->mm.shrinker.seeks = DEFAULT_SEEKS; in i915_gem_driver_register__shrinker() 467 i915->mm.shrinker.batch = 4096; in i915_gem_driver_register__shrinker() [all …]
|
/Linux-v5.4/mm/ |
D | vmscan.c | 201 #define SHRINKER_REGISTERING ((struct shrinker *)~0UL) 206 static int prealloc_memcg_shrinker(struct shrinker *shrinker) in prealloc_memcg_shrinker() argument 224 shrinker->id = id; in prealloc_memcg_shrinker() 231 static void unregister_memcg_shrinker(struct shrinker *shrinker) in unregister_memcg_shrinker() argument 233 int id = shrinker->id; in unregister_memcg_shrinker() 296 static int prealloc_memcg_shrinker(struct shrinker *shrinker) in prealloc_memcg_shrinker() argument 301 static void unregister_memcg_shrinker(struct shrinker *shrinker) in unregister_memcg_shrinker() argument 385 int prealloc_shrinker(struct shrinker *shrinker) in prealloc_shrinker() argument 387 unsigned int size = sizeof(*shrinker->nr_deferred); in prealloc_shrinker() 389 if (shrinker->flags & SHRINKER_NUMA_AWARE) in prealloc_shrinker() [all …]
|
D | workingset.c | 393 static unsigned long count_shadow_nodes(struct shrinker *shrinker, in count_shadow_nodes() argument 515 static unsigned long scan_shadow_nodes(struct shrinker *shrinker, in scan_shadow_nodes() argument 523 static struct shrinker workingset_shadow_shrinker = {
|
D | zsmalloc.c | 264 struct shrinker shrinker; member 2331 static unsigned long zs_shrinker_scan(struct shrinker *shrinker, in zs_shrinker_scan() argument 2335 struct zs_pool *pool = container_of(shrinker, struct zs_pool, in zs_shrinker_scan() 2336 shrinker); in zs_shrinker_scan() 2349 static unsigned long zs_shrinker_count(struct shrinker *shrinker, in zs_shrinker_count() argument 2355 struct zs_pool *pool = container_of(shrinker, struct zs_pool, in zs_shrinker_count() 2356 shrinker); in zs_shrinker_count() 2373 unregister_shrinker(&pool->shrinker); in zs_unregister_shrinker() 2378 pool->shrinker.scan_objects = zs_shrinker_scan; in zs_register_shrinker() 2379 pool->shrinker.count_objects = zs_shrinker_count; in zs_register_shrinker() [all …]
|
D | list_lru.c | 601 struct lock_class_key *key, struct shrinker *shrinker) in __list_lru_init() argument 607 if (shrinker) in __list_lru_init() 608 lru->shrinker_id = shrinker->id; in __list_lru_init()
|
/Linux-v5.4/drivers/virtio/ |
D | virtio_balloon.c | 115 struct shrinker shrinker; member 801 static unsigned long virtio_balloon_shrinker_scan(struct shrinker *shrinker, in virtio_balloon_shrinker_scan() argument 805 struct virtio_balloon *vb = container_of(shrinker, in virtio_balloon_shrinker_scan() 806 struct virtio_balloon, shrinker); in virtio_balloon_shrinker_scan() 821 static unsigned long virtio_balloon_shrinker_count(struct shrinker *shrinker, in virtio_balloon_shrinker_count() argument 824 struct virtio_balloon *vb = container_of(shrinker, in virtio_balloon_shrinker_count() 825 struct virtio_balloon, shrinker); in virtio_balloon_shrinker_count() 836 unregister_shrinker(&vb->shrinker); in virtio_balloon_unregister_shrinker() 841 vb->shrinker.scan_objects = virtio_balloon_shrinker_scan; in virtio_balloon_register_shrinker() 842 vb->shrinker.count_objects = virtio_balloon_shrinker_count; in virtio_balloon_register_shrinker() [all …]
|
/Linux-v5.4/drivers/misc/ |
D | vmw_balloon.c | 389 struct shrinker shrinker; member 1525 static unsigned long vmballoon_shrinker_scan(struct shrinker *shrinker, in vmballoon_shrinker_scan() argument 1567 static unsigned long vmballoon_shrinker_count(struct shrinker *shrinker, in vmballoon_shrinker_count() argument 1578 unregister_shrinker(&b->shrinker); in vmballoon_unregister_shrinker() 1590 b->shrinker.scan_objects = vmballoon_shrinker_scan; in vmballoon_register_shrinker() 1591 b->shrinker.count_objects = vmballoon_shrinker_count; in vmballoon_register_shrinker() 1592 b->shrinker.seeks = DEFAULT_SEEKS; in vmballoon_register_shrinker() 1594 r = register_shrinker(&b->shrinker); in vmballoon_register_shrinker()
|
/Linux-v5.4/fs/erofs/ |
D | utils.c | 256 static unsigned long erofs_shrink_count(struct shrinker *shrink, in erofs_shrink_count() 262 static unsigned long erofs_shrink_scan(struct shrinker *shrink, in erofs_shrink_scan() 317 static struct shrinker erofs_shrinker_info = {
|
/Linux-v5.4/fs/f2fs/ |
D | shrinker.c | 39 unsigned long f2fs_shrink_count(struct shrinker *shrink, in f2fs_shrink_count() 75 unsigned long f2fs_shrink_scan(struct shrinker *shrink, in f2fs_shrink_scan()
|
D | Makefile | 6 f2fs-y += shrinker.o extent_cache.o sysfs.o
|
/Linux-v5.4/drivers/md/ |
D | dm-bufio.c | 111 struct shrinker shrinker; member 1575 dm_bufio_shrink_scan(struct shrinker *shrink, struct shrink_control *sc) in dm_bufio_shrink_scan() 1580 c = container_of(shrink, struct dm_bufio_client, shrinker); in dm_bufio_shrink_scan() 1592 dm_bufio_shrink_count(struct shrinker *shrink, struct shrink_control *sc) in dm_bufio_shrink_count() 1594 struct dm_bufio_client *c = container_of(shrink, struct dm_bufio_client, shrinker); in dm_bufio_shrink_count() 1690 c->shrinker.count_objects = dm_bufio_shrink_count; in dm_bufio_client_create() 1691 c->shrinker.scan_objects = dm_bufio_shrink_scan; in dm_bufio_client_create() 1692 c->shrinker.seeks = 1; in dm_bufio_client_create() 1693 c->shrinker.batch = 0; in dm_bufio_client_create() 1694 r = register_shrinker(&c->shrinker); in dm_bufio_client_create() [all …]
|
/Linux-v5.4/fs/ubifs/ |
D | shrinker.c | 267 unsigned long ubifs_shrink_count(struct shrinker *shrink, in ubifs_shrink_count() 279 unsigned long ubifs_shrink_scan(struct shrinker *shrink, in ubifs_shrink_scan()
|
D | Makefile | 4 ubifs-y += shrinker.o journal.o file.o dir.o super.o sb.o io.o
|
/Linux-v5.4/fs/ |
D | mbcache.c | 40 struct shrinker c_shrink; 270 static unsigned long mb_cache_count(struct shrinker *shrink, in mb_cache_count() 320 static unsigned long mb_cache_scan(struct shrinker *shrink, in mb_cache_scan()
|
/Linux-v5.4/include/trace/events/ |
D | vmscan.h | 186 TP_PROTO(struct shrinker *shr, struct shrink_control *sc, 195 __field(struct shrinker *, shr) 231 TP_PROTO(struct shrinker *shr, int nid, int shrinker_retval, 238 __field(struct shrinker *, shr)
|
/Linux-v5.4/fs/nfsd/ |
D | nfscache.c | 40 static unsigned long nfsd_reply_cache_count(struct shrinker *shrink, 42 static unsigned long nfsd_reply_cache_scan(struct shrinker *shrink, 272 nfsd_reply_cache_count(struct shrinker *shrink, struct shrink_control *sc) in nfsd_reply_cache_count() 281 nfsd_reply_cache_scan(struct shrinker *shrink, struct shrink_control *sc) in nfsd_reply_cache_scan()
|
/Linux-v5.4/fs/gfs2/ |
D | quota.h | 61 extern struct shrinker gfs2_qd_shrinker;
|