| /include/linux/ |
| A D | rmap.h | 411 VM_WARN_ON_FOLIO(folio_test_hugetlb(folio), folio); in __folio_rmap_sanity_checks() 414 VM_WARN_ON_FOLIO(is_zero_folio(folio), folio); in __folio_rmap_sanity_checks() 426 VM_WARN_ON_FOLIO(page_folio(page) != folio, folio); in __folio_rmap_sanity_checks() 514 VM_WARN_ON_FOLIO(!folio_test_hugetlb(folio), folio); in hugetlb_try_dup_anon_rmap() 515 VM_WARN_ON_FOLIO(!folio_test_anon(folio), folio); in hugetlb_try_dup_anon_rmap() 530 VM_WARN_ON_FOLIO(!folio_test_hugetlb(folio), folio); in hugetlb_try_share_anon_rmap() 531 VM_WARN_ON_FOLIO(!folio_test_anon(folio), folio); in hugetlb_try_share_anon_rmap() 554 VM_WARN_ON_FOLIO(folio_test_anon(folio), folio); in hugetlb_add_file_rmap() 649 VM_WARN_ON_FOLIO(!folio_test_anon(folio), folio); in __folio_try_dup_anon_rmap() 783 VM_WARN_ON_FOLIO(!folio_test_anon(folio), folio); in __folio_try_share_anon_rmap() [all …]
|
| A D | hugetlb_cgroup.h | 63 VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio); in __hugetlb_cgroup_from_folio() 76 hugetlb_cgroup_from_folio_rsvd(struct folio *folio) in hugetlb_cgroup_from_folio_rsvd() argument 84 VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio); in __set_hugetlb_cgroup() 133 struct folio *folio); 136 struct folio *folio); 138 struct folio *folio); 140 struct folio *folio); 222 struct folio *folio) in hugetlb_cgroup_commit_charge() argument 229 struct folio *folio) in hugetlb_cgroup_commit_charge_rsvd() argument 234 struct folio *folio) in hugetlb_cgroup_uncharge_folio() argument [all …]
|
| A D | pagemap.h | 933 return folio->index + folio_nr_pages(folio); in folio_next_index() 1029 struct folio *folio = page_folio(page); in page_offset() local 1052 struct folio *folio; member 1058 struct folio *folio; member 1066 if (wait_page->folio != key->folio) in wake_page_match() 1076 void __folio_lock(struct folio *folio); 1080 void folio_unlock(struct folio *folio); 1149 struct folio *folio; in lock_page() local 1224 void folio_wait_stable(struct folio *folio); 1396 struct folio *folio; in __readahead_folio() local [all …]
|
| A D | mm_inline.h | 28 static inline int folio_is_file_lru(struct folio *folio) in folio_is_file_lru() argument 68 VM_BUG_ON_FOLIO(!folio_test_lru(folio), folio); in __folio_clear_lru_flags() 73 if (folio_test_active(folio) && folio_test_unevictable(folio)) in __folio_clear_lru_flags() 91 VM_BUG_ON_FOLIO(folio_test_active(folio) && folio_test_unevictable(folio), folio); in folio_lru_list() 144 static inline int folio_lru_refs(struct folio *folio) in folio_lru_refs() argument 157 static inline int folio_lru_gen(struct folio *folio) in folio_lru_gen() argument 245 (folio_test_dirty(folio) || folio_test_writeback(folio)))) in lru_gen_folio_seq() 291 VM_WARN_ON_ONCE_FOLIO(folio_test_active(folio), folio); in lru_gen_del_folio() 292 VM_WARN_ON_ONCE_FOLIO(folio_test_unevictable(folio), folio); in lru_gen_del_folio() 340 void lruvec_add_folio(struct lruvec *lruvec, struct folio *folio) in lruvec_add_folio() argument [all …]
|
| A D | migrate.h | 10 typedef struct folio *new_folio_t(struct folio *folio, unsigned long private); 11 typedef void free_folio_t(struct folio *folio, unsigned long private); 73 bool isolate_folio_to_list(struct folio *folio, struct list_head *list); 76 struct folio *dst, struct folio *src); 79 void folio_migrate_flags(struct folio *newfolio, struct folio *folio); 81 struct folio *newfolio, struct folio *folio, int extra_count); 90 static inline struct folio *alloc_migration_target(struct folio *src, in alloc_migration_target() 99 struct folio *dst, struct folio *src) in migrate_huge_page_move_mapping() 107 int migrate_misplaced_folio_prepare(struct folio *folio, 109 int migrate_misplaced_folio(struct folio *folio, int node); [all …]
|
| A D | page_ref.h | 87 static inline int folio_ref_count(const struct folio *folio) in folio_ref_count() argument 104 static inline void folio_set_count(struct folio *folio, int v) in folio_set_count() argument 125 static inline void folio_ref_add(struct folio *folio, int nr) in folio_ref_add() argument 137 static inline void folio_ref_sub(struct folio *folio, int nr) in folio_ref_sub() argument 142 static inline int folio_ref_sub_return(struct folio *folio, int nr) in folio_ref_sub_return() argument 158 static inline void folio_ref_inc(struct folio *folio) in folio_ref_inc() argument 170 static inline void folio_ref_dec(struct folio *folio) in folio_ref_dec() argument 198 static inline int folio_ref_inc_return(struct folio *folio) in folio_ref_inc_return() argument 212 static inline int folio_ref_dec_and_test(struct folio *folio) in folio_ref_dec_and_test() argument 226 static inline int folio_ref_dec_return(struct folio *folio) in folio_ref_dec_return() argument [all …]
|
| A D | page_idle.h | 14 static inline bool folio_test_young(const struct folio *folio) in folio_test_young() argument 16 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_test_young() 28 static inline void folio_set_young(struct folio *folio) in folio_set_young() argument 30 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_set_young() 39 static inline bool folio_test_clear_young(struct folio *folio) in folio_test_clear_young() argument 41 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_test_clear_young() 53 static inline bool folio_test_idle(const struct folio *folio) in folio_test_idle() argument 55 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_test_idle() 67 static inline void folio_set_idle(struct folio *folio) in folio_set_idle() argument 69 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_set_idle() [all …]
|
| A D | zswap.h | 28 bool zswap_store(struct folio *folio); 29 int zswap_load(struct folio *folio); 35 void zswap_folio_swapin(struct folio *folio); 42 static inline bool zswap_store(struct folio *folio) in zswap_store() argument 47 static inline int zswap_load(struct folio *folio) in zswap_load() argument 60 static inline void zswap_folio_swapin(struct folio *folio) {} in zswap_folio_swapin() argument
|
| A D | swap.h | 356 struct folio *folio = page_folio(page); in page_swap_entry() local 369 void workingset_activation(struct folio *folio); 405 void folio_deactivate(struct folio *folio); 406 void folio_mark_lazyfree(struct folio *folio); 473 void free_swap_cache(struct folio *folio); 474 void free_folio_and_swap_cache(struct folio *folio); 494 bool folio_free_swap(struct folio *folio); 515 sector_t swap_folio_sector(struct folio *folio); 553 static inline void free_swap_cache(struct folio *folio) in free_swap_cache() argument 604 static inline bool folio_free_swap(struct folio *folio) in folio_free_swap() argument [all …]
|
| A D | ksm.h | 88 struct folio *ksm_might_need_to_copy(struct folio *folio, 91 void rmap_walk_ksm(struct folio *folio, struct rmap_walk_control *rwc); 92 void folio_migrate_ksm(struct folio *newfolio, struct folio *folio); 93 void collect_procs_ksm(const struct folio *folio, const struct page *page, 128 static inline void collect_procs_ksm(const struct folio *folio, in collect_procs_ksm() argument 141 static inline struct folio *ksm_might_need_to_copy(struct folio *folio, in ksm_might_need_to_copy() argument 144 return folio; in ksm_might_need_to_copy() 147 static inline void rmap_walk_ksm(struct folio *folio, in rmap_walk_ksm() argument 152 static inline void folio_migrate_ksm(struct folio *newfolio, struct folio *old) in folio_migrate_ksm()
|
| A D | vmstat.h | 411 static inline void __zone_stat_mod_folio(struct folio *folio, in __zone_stat_mod_folio() argument 429 static inline void zone_stat_mod_folio(struct folio *folio, in zone_stat_mod_folio() argument 435 static inline void zone_stat_add_folio(struct folio *folio, in zone_stat_add_folio() argument 441 static inline void zone_stat_sub_folio(struct folio *folio, in zone_stat_sub_folio() argument 465 static inline void node_stat_mod_folio(struct folio *folio, in node_stat_mod_folio() argument 471 static inline void node_stat_add_folio(struct folio *folio, in node_stat_add_folio() argument 477 static inline void node_stat_sub_folio(struct folio *folio, in node_stat_sub_folio() argument 536 void __lruvec_stat_mod_folio(struct folio *folio, 592 __lruvec_stat_mod_folio(folio, idx, folio_nr_pages(folio)); in __lruvec_stat_add_folio() 604 lruvec_stat_mod_folio(folio, idx, folio_nr_pages(folio)); in lruvec_stat_add_folio() [all …]
|
| A D | page_owner.h | 16 extern void __folio_copy_owner(struct folio *newfolio, struct folio *old); 17 extern void __folio_set_owner_migrate_reason(struct folio *folio, int reason); 41 static inline void folio_copy_owner(struct folio *newfolio, struct folio *old) in folio_copy_owner() 46 static inline void folio_set_owner_migrate_reason(struct folio *folio, int reason) in folio_set_owner_migrate_reason() argument 49 __folio_set_owner_migrate_reason(folio, reason); in folio_set_owner_migrate_reason() 68 static inline void folio_copy_owner(struct folio *newfolio, struct folio *folio) in folio_copy_owner() argument 71 static inline void folio_set_owner_migrate_reason(struct folio *folio, int reason) in folio_set_owner_migrate_reason() argument
|
| A D | memcontrol.h | 363 static inline bool folio_memcg_kmem(struct folio *folio); 391 VM_BUG_ON_FOLIO(folio_test_slab(folio), folio); in __folio_memcg() 412 VM_BUG_ON_FOLIO(folio_test_slab(folio), folio); in __folio_objcg() 451 static inline bool folio_memcg_charged(struct folio *folio) in folio_memcg_charged() argument 526 static inline bool folio_memcg_kmem(struct folio *folio) in folio_memcg_kmem() argument 528 VM_BUG_ON_PGFLAGS(PageTail(&folio->page), &folio->page); in folio_memcg_kmem() 662 void __mem_cgroup_uncharge(struct folio *folio); 746 struct lruvec *folio_lruvec_lock(struct folio *folio); 747 struct lruvec *folio_lruvec_lock_irq(struct folio *folio); 1081 static inline bool folio_memcg_kmem(struct folio *folio) in folio_memcg_kmem() argument [all …]
|
| A D | page-flags.h | 319 #define folio_page(folio, n) nth_page(&(folio)->page, n) argument 356 static unsigned long *folio_flags(struct folio *folio, unsigned n) in folio_flags() argument 502 static inline void folio_set_##name(struct folio *folio) { } 504 static inline void folio_clear_##name(struct folio *folio) { } 506 static inline void __folio_set_##name(struct folio *folio) { } 508 static inline void __folio_clear_##name(struct folio *folio) { } 510 static inline bool folio_test_set_##name(struct folio *folio) \ 862 static inline bool folio_test_large(const struct folio *folio) in __SETPAGEFLAG() 973 VM_BUG_ON_FOLIO(!folio_test_##fname(folio), folio); \ 1100 const struct folio *folio; in is_page_hwpoison() local [all …]
|
| A D | highmem.h | 132 static inline void *kmap_local_folio(struct folio *folio, size_t offset); 227 struct folio *folio; in vma_alloc_zeroed_movable_folio() local 233 return folio; in vma_alloc_zeroed_movable_folio() 476 static inline void memcpy_from_folio(char *to, struct folio *folio, in memcpy_from_folio() argument 504 static inline void memcpy_to_folio(struct folio *folio, size_t offset, in memcpy_to_folio() argument 541 static inline __must_check void *folio_zero_tail(struct folio *folio, in folio_zero_tail() argument 577 static inline void folio_fill_tail(struct folio *folio, size_t offset, in folio_fill_tail() argument 641 static inline void folio_zero_segments(struct folio *folio, in folio_zero_segments() argument 653 static inline void folio_zero_segment(struct folio *folio, in folio_zero_segment() argument 665 static inline void folio_zero_range(struct folio *folio, in folio_zero_range() argument [all …]
|
| A D | huge_mm.h | 44 vm_fault_t vmf_insert_folio_pmd(struct vm_fault *vmf, struct folio *folio, 46 vm_fault_t vmf_insert_folio_pud(struct vm_fault *vmf, struct folio *folio, 348 int min_order_for_split(struct folio *folio); 382 struct folio *folio = page_folio(page); in split_huge_page() local 470 static inline bool folio_test_pmd_mappable(struct folio *folio) in folio_test_pmd_mappable() argument 480 static inline bool is_huge_zero_folio(const struct folio *folio) in is_huge_zero_folio() argument 506 pmd_t *pmdp, struct folio *folio); 510 static inline bool folio_test_pmd_mappable(struct folio *folio) in folio_test_pmd_mappable() argument 588 struct folio *folio) in unmap_huge_pmd_locked() argument 635 static inline bool is_huge_zero_folio(const struct folio *folio) in is_huge_zero_folio() argument [all …]
|
| A D | hugetlb.h | 24 void free_huge_folio(struct folio *folio); 161 void folio_putback_hugetlb(struct folio *folio); 300 struct folio *folio) in hugetlb_folio_mapping_lock_write() argument 447 unsigned long end, struct folio *folio, in __unmap_hugepage_range() argument 610 void folio_set_hugetlb_##flname(struct folio *folio) \ 624 folio_test_hugetlb_##flname(struct folio *folio) \ 629 folio_set_hugetlb_##flname(struct folio *folio) \ 634 folio_clear_hugetlb_##flname(struct folio *folio) \ 710 unsigned long address, struct folio *folio); 849 VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio); in folio_hstate() [all …]
|
| A D | mm.h | 976 struct folio *folio = (struct folio *)page; in compound_order() local 1185 void __folio_put(struct folio *folio); 1327 struct folio *folio = page_folio(page); in get_page() local 1424 struct folio *folio = page_folio(page); in put_page() local 1465 void unpin_folio(struct folio *folio); 1899 struct folio *folio) in folio_needs_cow_for_dma() argument 2016 struct folio *folio = (struct folio *)page; in compound_nr() local 2037 static inline struct folio *folio_next(struct folio *folio) in folio_next() argument 2039 return (struct folio *)folio_page(folio, folio_nr_pages(folio)); in folio_next() 2415 struct folio *folio); [all …]
|
| A D | cacheflush.h | 7 struct folio; 11 void flush_dcache_folio(struct folio *folio); 14 static inline void flush_dcache_folio(struct folio *folio) in flush_dcache_folio() argument
|
| A D | writeback.h | 204 void __inode_attach_wb(struct inode *inode, struct folio *folio); 206 void wbc_account_cgroup_owner(struct writeback_control *wbc, struct folio *folio, 222 static inline void inode_attach_wb(struct inode *inode, struct folio *folio) in inode_attach_wb() argument 225 __inode_attach_wb(inode, folio); in inode_attach_wb() 270 static inline void inode_attach_wb(struct inode *inode, struct folio *folio) in inode_attach_wb() argument 292 struct folio *folio, size_t bytes) in wbc_account_cgroup_owner() argument 360 struct folio *writeback_iter(struct address_space *mapping, 361 struct writeback_control *wbc, struct folio *folio, int *error); 363 typedef int (*writepage_t)(struct folio *folio, struct writeback_control *wbc, 374 bool filemap_dirty_folio(struct address_space *mapping, struct folio *folio); [all …]
|
| A D | buffer_head.h | 186 #define folio_buffers(folio) folio_get_private(folio) argument 188 void buffer_check_dirty_writeback(struct folio *folio, 198 void folio_set_bh(struct buffer_head *bh, struct folio *folio, 203 struct buffer_head *create_empty_buffers(struct folio *folio, 257 int __block_write_full_folio(struct inode *inode, struct folio *folio, 263 int __block_write_begin(struct folio *folio, loff_t pos, unsigned len, 269 void folio_zero_new_buffers(struct folio *folio, size_t from, size_t to); 274 void block_commit_write(struct folio *folio, size_t from, size_t to); 282 struct folio *dst, struct folio *src, enum migrate_mode); 284 struct folio *dst, struct folio *src, enum migrate_mode); [all …]
|
| A D | nfs_page.h | 47 struct folio *wb_folio; 133 struct folio *folio, 192 struct folio *folio = nfs_page_to_folio(req); in nfs_page_to_page() local 194 if (folio == NULL) in nfs_page_to_page() 196 return folio_page(folio, pgbase >> PAGE_SHIFT); in nfs_page_to_page() 205 struct folio *folio = nfs_page_to_folio(req); in nfs_page_to_inode() local 207 if (folio == NULL) in nfs_page_to_inode() 209 return folio->mapping->host; in nfs_page_to_inode() 220 struct folio *folio = nfs_page_to_folio(req); in nfs_page_max_length() local 222 if (folio == NULL) in nfs_page_max_length() [all …]
|
| A D | pagevec.h | 17 struct folio; 32 struct folio *folios[PAGEVEC_SIZE]; 75 struct folio *folio) in folio_batch_add() argument 77 fbatch->folios[fbatch->nr++] = folio; in folio_batch_add() 89 static inline struct folio *folio_batch_next(struct folio_batch *fbatch) in folio_batch_next()
|
| /include/trace/events/ |
| A D | pagemap.h | 30 TP_PROTO(struct folio *folio), 32 TP_ARGS(folio), 35 __field(struct folio *, folio ) 42 __entry->folio = folio; 43 __entry->pfn = folio_pfn(folio); 50 __entry->folio, 63 TP_PROTO(struct folio *folio), 65 TP_ARGS(folio), 68 __field(struct folio *, folio ) 73 __entry->folio = folio; [all …]
|
| A D | filemap.h | 18 TP_PROTO(struct folio *folio), 20 TP_ARGS(folio), 31 __entry->pfn = folio_pfn(folio); 32 __entry->i_ino = folio->mapping->host->i_ino; 33 __entry->index = folio->index; 34 if (folio->mapping->host->i_sb) 38 __entry->order = folio_order(folio); 50 TP_PROTO(struct folio *folio), 51 TP_ARGS(folio) 55 TP_PROTO(struct folio *folio), [all …]
|