| /linux-6.15/mm/ |
| H A D | list_lru.c | 43 list_del(&lru->list); in list_lru_unregister() 60 return &lru->node[nid].lru; in list_lru_from_memcg_idx() 130 return &lru->node[nid].lru; in list_lru_from_memcg_idx() 137 struct list_lru_one *l = &lru->node[nid].lru; in lock_list_lru_of_memcg() 395 if (lru->key) in init_one_lru() 584 lru->node = kcalloc(nr_node_ids, sizeof(*lru->node), GFP_KERNEL); in __list_lru_init() 585 if (!lru->node) in __list_lru_init() 589 init_one_lru(lru, &lru->node[i].lru); in __list_lru_init() 601 if (!lru->node) in list_lru_destroy() 607 kfree(lru->node); in list_lru_destroy() [all …]
|
| H A D | balloon_compaction.c | 49 list_for_each_entry_safe(page, tmp, pages, lru) { in balloon_page_list_enqueue() 50 list_del(&page->lru); in balloon_page_list_enqueue() 85 list_for_each_entry_safe(page, tmp, &b_dev_info->pages, lru) { in balloon_page_list_dequeue() 105 list_add(&page->lru, pages); in balloon_page_list_dequeue() 202 return list_first_entry(&pages, struct page, lru); in balloon_page_dequeue() 215 list_del(&page->lru); in balloon_page_isolate() 228 list_add(&page->lru, &b_dev_info->pages); in balloon_page_putback()
|
| H A D | page_reporting.c | 183 list_for_each_entry_safe(page, next, list, lru) { in page_reporting_cycle() 218 if (!list_is_first(&page->lru, list)) in page_reporting_cycle() 219 list_rotate_to_front(&page->lru, list); in page_reporting_cycle() 243 next = list_first_entry(list, struct page, lru); in page_reporting_cycle() 251 if (!list_entry_is_head(next, list, lru) && !list_is_first(&next->lru, list)) in page_reporting_cycle() 252 list_rotate_to_front(&next->lru, list); in page_reporting_cycle()
|
| H A D | migrate.c | 143 list_del(&folio->lru); in putback_movable_pages() 169 bool isolated, lru; in isolate_folio_to_list() local 175 if (lru) in isolate_folio_to_list() 184 list_add(&folio->lru, list); in isolate_folio_to_list() 185 if (lru) in isolate_folio_to_list() 1202 list_del(&src->lru); in migrate_folio_unmap() 1357 prev = dst->lru.prev; in migrate_folio_move() 1358 list_del(&dst->lru); in migrate_folio_move() 1397 list_del(&src->lru); in migrate_folio_move() 1411 list_add(&dst->lru, prev); in migrate_folio_move() [all …]
|
| H A D | hugetlb_vmemmap.c | 203 list_for_each_entry_safe(page, next, list, lru) in free_vmemmap_page_list() 221 list_del(&walk->reuse_page->lru); in vmemmap_remap_pte() 232 list_add(&page->lru, walk->vmemmap_pages); in vmemmap_remap_pte() 265 list_del(&page->lru); in vmemmap_restore_pte() 345 list_add(&walk.reuse_page->lru, vmemmap_pages); in vmemmap_remap_free() 399 list_add(&page->lru, list); in alloc_vmemmap_page_list() 405 list_for_each_entry_safe(page, next, list, lru) in alloc_vmemmap_page_list() 526 list_for_each_entry_safe(folio, t_folio, folio_list, lru) { in hugetlb_vmemmap_restore_folios() 538 list_move(&folio->lru, non_hvo_folios); in hugetlb_vmemmap_restore_folios() 662 list_for_each_entry(folio, folio_list, lru) { in __hugetlb_vmemmap_optimize_folios() [all …]
|
| H A D | vmscan.c | 2641 nr[lru] = scan; in get_scan_count() 5783 if (nr[lru]) { in shrink_lruvec() 5819 lru = LRU_BASE; in shrink_lruvec() 5829 nr[lru] = 0; in shrink_lruvec() 5836 lru = (lru == LRU_FILE) ? LRU_BASE : LRU_FILE; in shrink_lruvec() 5837 nr_scanned = targets[lru] - nr[lru]; in shrink_lruvec() 5838 nr[lru] = targets[lru] * (100 - percentage) / 100; in shrink_lruvec() 5839 nr[lru] -= min(nr[lru], nr_scanned); in shrink_lruvec() 5842 nr_scanned = targets[lru] - nr[lru]; in shrink_lruvec() 5843 nr[lru] = targets[lru] * (100 - percentage) / 100; in shrink_lruvec() [all …]
|
| /linux-6.15/include/linux/ |
| H A D | list_lru.h | 47 struct list_lru_one lru; member 64 void list_lru_destroy(struct list_lru *lru); 68 #define list_lru_init(lru) \ argument 69 __list_lru_init((lru), false, NULL) 70 #define list_lru_init_memcg(lru, shrinker) \ argument 71 __list_lru_init((lru), true, shrinker) 77 lru->key = key; in list_lru_init_memcg_key() 79 return list_lru_init_memcg(lru, shrinker); in list_lru_init_memcg_key() 190 return list_lru_count_one(lru, sc->nid, sc->memcg); in list_lru_shrink_count() 199 count += list_lru_count_node(lru, nid); in list_lru_count() [all …]
|
| H A D | mm_inline.h | 89 enum lru_list lru; in folio_lru_list() local 98 lru += LRU_ACTIVE; in folio_lru_list() 100 return lru; in folio_lru_list() 197 lru += LRU_ACTIVE; in lru_gen_update_size() 205 lru += LRU_ACTIVE; in lru_gen_update_size() 300 list_del(&folio->lru); in lru_gen_del_folio() 349 if (lru != LRU_UNEVICTABLE) in lruvec_add_folio() 350 list_add(&folio->lru, &lruvec->lists[lru]); in lruvec_add_folio() 364 list_add_tail(&folio->lru, &lruvec->lists[lru]); in lruvec_add_folio_tail() 375 if (lru != LRU_UNEVICTABLE) in lruvec_del_folio() [all …]
|
| H A D | balloon_compaction.h | 97 list_add(&page->lru, &balloon->pages); in balloon_page_insert() 118 list_del(&page->lru); in balloon_page_delete() 141 list_add(&page->lru, &balloon->pages); in balloon_page_insert() 147 list_del(&page->lru); in balloon_page_delete() 166 list_add(&page->lru, pages); in balloon_page_push() 178 struct page *page = list_first_entry_or_null(pages, struct page, lru); in balloon_page_pop() 183 list_del(&page->lru); in balloon_page_pop()
|
| /linux-6.15/kernel/bpf/ |
| H A D | bpf_lru_list.c | 225 } else if (lru->del_from_htab(lru->del_arg, node)) { in __bpf_lru_list_shrink_inactive() 232 if (++i == lru->nr_scans) in __bpf_lru_list_shrink_inactive() 284 if (lru->del_from_htab(lru->del_arg, node)) { in __bpf_lru_list_shrink() 390 lru->del_from_htab(lru->del_arg, node)) { in __local_list_pop_pending() 501 if (lru->percpu) in bpf_lru_pop_free() 558 if (lru->percpu) in bpf_lru_push_free() 616 if (lru->percpu) in bpf_lru_populate() 658 if (!lru->percpu_lru) in bpf_lru_init() 686 lru->percpu = percpu; in bpf_lru_init() 688 lru->del_arg = del_arg; in bpf_lru_init() [all …]
|
| H A D | bpf_lru_list.h | 71 int bpf_lru_init(struct bpf_lru *lru, bool percpu, u32 hash_offset, 73 void bpf_lru_populate(struct bpf_lru *lru, void *buf, u32 node_offset, 75 void bpf_lru_destroy(struct bpf_lru *lru); 76 struct bpf_lru_node *bpf_lru_pop_free(struct bpf_lru *lru, u32 hash); 77 void bpf_lru_push_free(struct bpf_lru *lru, struct bpf_lru_node *node);
|
| /linux-6.15/samples/bpf/ |
| H A D | test_lru_dist.c | 109 assert(lru->free_nodes); in pfect_lru_init() 112 lru->cur_size = 0; in pfect_lru_init() 113 lru->lru_size = lru_size; in pfect_lru_init() 114 lru->nr_unique = lru->nr_misses = lru->total = 0; in pfect_lru_init() 119 close(lru->map_fd); in pfect_lru_destroy() 120 free(lru->free_nodes); in pfect_lru_destroy() 129 lru->total++; in pfect_lru_lookup_or_insert() 138 if (lru->cur_size < lru->lru_size) { in pfect_lru_lookup_or_insert() 139 node = &lru->free_nodes[lru->cur_size++]; in pfect_lru_lookup_or_insert() 153 lru->nr_misses++; in pfect_lru_lookup_or_insert() [all …]
|
| /linux-6.15/drivers/gpu/drm/ttm/ |
| H A D | ttm_resource.c | 173 list_bulk_move_tail(&man->lru[j], &pos->first->lru.link, in ttm_lru_bulk_move_tail() 190 struct ttm_lru_item *lru = &cur->lru; in ttm_lru_prev_res() local 193 lru = list_prev_entry(lru, link); in ttm_lru_prev_res() 202 struct ttm_lru_item *lru = &cur->lru; in ttm_lru_next_res() local 205 lru = list_next_entry(lru, link); in ttm_lru_next_res() 218 list_move(&res->lru.link, &pos->last->lru.link); in ttm_lru_bulk_move_pos_tail() 253 list_move(&res->lru.link, &pos->last->lru.link); in ttm_lru_bulk_move_del() 313 list_move_tail(&res->lru.link, &man->lru[bo->priority]); in ttm_resource_move_to_lru_tail() 346 list_add_tail(&res->lru.link, &man->lru[bo->priority]); in ttm_resource_init() 674 lru = &cursor->hitch; in ttm_resource_manager_next() [all …]
|
| /linux-6.15/fs/nfs/ |
| H A D | nfs42xattr.c | 71 struct list_head lru; member 82 struct list_head lru; member 130 struct list_lru *lru; in nfs4_xattr_entry_lru_add() local 135 return list_lru_add_obj(lru, &entry->lru); in nfs4_xattr_entry_lru_add() 141 struct list_lru *lru; in nfs4_xattr_entry_lru_del() local 146 return list_lru_del_obj(lru, &entry->lru); in nfs4_xattr_entry_lru_del() 830 list_lru_isolate(lru, &cache->lru); in cache_lru_isolate() 899 list_lru_isolate(lru, &entry->lru); in entry_lru_isolate() 910 list_lru_isolate(lru, &entry->lru); in entry_lru_isolate() 925 struct list_lru *lru; in nfs4_xattr_entry_scan() local [all …]
|
| /linux-6.15/drivers/gpu/drm/ |
| H A D | drm_gem.c | 1372 lru->lock = lock; in drm_gem_lru_init() 1373 lru->count = 0; in drm_gem_lru_init() 1384 obj->lru = NULL; in drm_gem_lru_remove_locked() 1397 struct drm_gem_lru *lru = obj->lru; in drm_gem_lru_remove() local 1399 if (!lru) in drm_gem_lru_remove() 1402 mutex_lock(lru->lock); in drm_gem_lru_remove() 1421 if (obj->lru) in drm_gem_lru_move_tail_locked() 1426 obj->lru = lru; in drm_gem_lru_move_tail_locked() 1443 mutex_lock(lru->lock); in drm_gem_lru_move_tail() 1520 WARN_ON(obj->lru == lru); in drm_gem_lru_scan() [all …]
|
| /linux-6.15/drivers/gpu/drm/msm/ |
| H A D | msm_gem_shrinker.c | 38 unsigned count = priv->lru.dontneed.count; in msm_gem_shrinker_count() 41 count += priv->lru.willneed.count; in msm_gem_shrinker_count() 104 struct drm_gem_lru *lru; in msm_gem_shrinker_scan() member 111 { &priv->lru.dontneed, purge, true }, in msm_gem_shrinker_scan() 112 { &priv->lru.willneed, evict, can_swap() }, in msm_gem_shrinker_scan() 113 { &priv->lru.dontneed, active_purge, can_block(sc) }, in msm_gem_shrinker_scan() 114 { &priv->lru.willneed, active_evict, can_swap() && can_block(sc) }, in msm_gem_shrinker_scan() 124 drm_gem_lru_scan(stages[i].lru, nr, in msm_gem_shrinker_scan() 183 &priv->lru.dontneed, in msm_gem_shrinker_vmap() 184 &priv->lru.willneed, in msm_gem_shrinker_vmap() [all …]
|
| /linux-6.15/net/ceph/ |
| H A D | pagelist.c | 32 struct page *page = list_entry(pl->head.prev, struct page, lru); in ceph_pagelist_unmap_tail() 45 lru); in ceph_pagelist_release() 46 list_del(&page->lru); in ceph_pagelist_release() 61 page = list_first_entry(&pl->free_list, struct page, lru); in ceph_pagelist_addpage() 62 list_del(&page->lru); in ceph_pagelist_addpage() 69 list_add_tail(&page->lru, &pl->head); in ceph_pagelist_addpage() 113 list_add_tail(&page->lru, &pl->free_list); in ceph_pagelist_reserve() 125 struct page, lru); in ceph_pagelist_free_reserve() 126 list_del(&page->lru); in ceph_pagelist_free_reserve()
|
| /linux-6.15/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/ |
| H A D | nv50.c | 38 struct list_head lru; member 53 struct list_head lru; member 143 eobj = list_first_entry_or_null(&imem->lru, typeof(*eobj), lru); in nv50_instobj_kmap() 149 list_del_init(&eobj->lru); in nv50_instobj_kmap() 207 list_add_tail(&iobj->lru, &imem->lru); in nv50_instobj_release() 276 list_del_init(&iobj->lru); in nv50_instobj_boot() 277 iobj->lru.next = NULL; in nv50_instobj_boot() 325 if (likely(iobj->lru.next)) in nv50_instobj_dtor() 326 list_del(&iobj->lru); in nv50_instobj_dtor() 370 INIT_LIST_HEAD(&iobj->lru); in nv50_instobj_wrap() [all …]
|
| /linux-6.15/drivers/md/ |
| H A D | dm-bufio.c | 88 struct lru *lru; member 103 static void lru_init(struct lru *lru) in lru_init() argument 110 static void lru_destroy(struct lru *lru) in lru_destroy() argument 151 it->lru = lru; in lru_iter_begin() 153 it->e = lru->cursor ? to_le(lru->cursor) : NULL; in lru_iter_begin() 231 lru->cursor = lru->cursor->next; in lru_remove() 397 struct lru lru[LIST_SIZE]; member 721 lru_remove(&bc->lru[b->list_mode], &b->lru); in cache_mark() 723 lru_insert(&bc->lru[b->list_mode], &b->lru); in cache_mark() 748 lru_insert(&bc->lru[b->list_mode], &b->lru); in __cache_mark_many() [all …]
|
| /linux-6.15/arch/mips/mm/ |
| H A D | cerr-sb1.c | 326 uint8_t lru; in extract_ic() local 348 lru = (taghi >> 14) & 0xff; in extract_ic() 352 (lru & 0x3), in extract_ic() 353 ((lru >> 2) & 0x3), in extract_ic() 354 ((lru >> 4) & 0x3), in extract_ic() 355 ((lru >> 6) & 0x3)); in extract_ic() 481 uint8_t ecc, lru; in extract_dc() local 507 (lru & 0x3), in extract_dc() 508 ((lru >> 2) & 0x3), in extract_dc() 509 ((lru >> 4) & 0x3), in extract_dc() [all …]
|
| /linux-6.15/fs/proc/ |
| H A D | meminfo.c | 42 int lru; in meminfo_proc_show() local 53 for (lru = LRU_BASE; lru < NR_LRU_LISTS; lru++) in meminfo_proc_show() 54 pages[lru] = global_node_page_state(NR_LRU_BASE + lru); in meminfo_proc_show()
|
| /linux-6.15/fs/bcachefs/ |
| H A D | lru.c | 30 const struct bch_lru *lru = bkey_s_c_to_lru(k).v; in bch2_lru_to_text() local 32 prt_printf(out, "idx %llu", le64_to_cpu(lru->idx)); in bch2_lru_to_text() 35 void bch2_lru_pos_to_text(struct printbuf *out, struct bpos lru) in bch2_lru_pos_to_text() argument 38 lru_pos_id(lru), in bch2_lru_pos_to_text() 39 lru_pos_time(lru), in bch2_lru_pos_to_text() 40 u64_to_bucket(lru.offset).inode, in bch2_lru_pos_to_text() 41 u64_to_bucket(lru.offset).offset); in bch2_lru_pos_to_text()
|
| /linux-6.15/drivers/xen/ |
| H A D | balloon.c | 154 list_add_tail(&page->lru, &ballooned_pages); in balloon_append() 157 list_add(&page->lru, &ballooned_pages); in balloon_append() 173 page = list_entry(ballooned_pages.next, struct page, lru); in balloon_retrieve() 176 list_del(&page->lru); in balloon_retrieve() 191 struct list_head *next = page->lru.next; in balloon_next_page() 194 return list_entry(next, struct page, lru); in balloon_next_page() 399 page = list_first_entry_or_null(&ballooned_pages, struct page, lru); in increase_reservation() 453 list_add(&page->lru, &pages); in decrease_reservation() 470 list_for_each_entry_safe(page, tmp, &pages, lru) { in decrease_reservation() 475 list_del(&page->lru); in decrease_reservation()
|
| /linux-6.15/kernel/power/ |
| H A D | wakelock.c | 32 struct list_head lru; member 92 list_add(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_add() 97 list_move(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_most_recent() 108 list_for_each_entry_safe_reverse(wl, aux, &wakelocks_lru_list, lru) { in __wakelocks_gc() 123 list_del(&wl->lru); in __wakelocks_gc()
|
| /linux-6.15/include/trace/events/ |
| H A D | pagemap.h | 37 __field(enum lru_list, lru ) 44 __entry->lru = folio_lru_list(folio); 52 __entry->lru,
|