| /linux/mm/ |
| H A D | swap.c | 52 * The following folio batches are grouped together because they are protected 73 static void __page_cache_release(struct folio *folio, struct lruvec **lruvecp, in __page_cache_release() argument 76 if (folio_test_lru(folio)) { in __page_cache_release() 77 folio_lruvec_relock_irqsave(folio, lruvecp, flagsp); in __page_cache_release() 78 lruvec_del_folio(*lruvecp, folio); in __page_cache_release() 79 __folio_clear_lru_flags(folio); in __page_cache_release() 87 static void page_cache_release(struct folio *folio) in page_cache_release() argument 92 __page_cache_release(folio, in page_cache_release() 97 __folio_put(struct folio * folio) __folio_put() argument 118 lru_add(struct lruvec * lruvec,struct folio * folio) lru_add() argument 165 struct folio *folio = fbatch->folios[i]; folio_batch_move_lru() local 183 __folio_batch_add_and_move(struct folio_batch __percpu * fbatch,struct folio * folio,move_fn_t move_fn,bool disable_irq) __folio_batch_add_and_move() argument 204 folio_batch_add_and_move(folio,op) global() argument 213 lru_move_tail(struct lruvec * lruvec,struct folio * folio) lru_move_tail() argument 231 folio_rotate_reclaimable(struct folio * folio) folio_rotate_reclaimable() argument 294 lru_note_cost_refault(struct folio * folio) lru_note_cost_refault() argument 303 lru_activate(struct lruvec * lruvec,struct folio * folio) lru_activate() argument 329 folio_activate(struct folio * folio) folio_activate() argument 343 folio_activate(struct folio * folio) folio_activate() argument 357 __lru_cache_activate_folio(struct folio * folio) __lru_cache_activate_folio() argument 389 lru_gen_inc_refs(struct folio * folio) lru_gen_inc_refs() argument 413 lru_gen_clear_refs(struct folio * folio) lru_gen_clear_refs() argument 431 lru_gen_inc_refs(struct folio * folio) lru_gen_inc_refs() argument 435 lru_gen_clear_refs(struct folio * folio) lru_gen_clear_refs() argument 455 folio_mark_accessed(struct folio * folio) folio_mark_accessed() argument 500 folio_add_lru(struct folio * folio) folio_add_lru() argument 523 folio_add_lru_vma(struct folio * folio,struct vm_area_struct * vma) folio_add_lru_vma() argument 554 lru_deactivate_file(struct lruvec * lruvec,struct folio * folio) lru_deactivate_file() argument 595 lru_deactivate(struct lruvec * lruvec,struct folio * folio) lru_deactivate() argument 611 lru_lazyfree(struct lruvec * lruvec,struct folio * folio) lru_lazyfree() argument 686 deactivate_file_folio(struct folio * folio) deactivate_file_folio() argument 706 folio_deactivate(struct folio * folio) folio_deactivate() argument 724 folio_mark_lazyfree(struct folio * folio) folio_mark_lazyfree() argument 958 struct folio *folio = folios->folios[i]; folios_put_refs() local 1028 struct folio *folio = page_folio(encoded_page_ptr(encoded[i])); release_pages() local 1080 struct folio *folio = fbatch->folios[i]; folio_batch_remove_exceptionals() local [all...] |
| H A D | truncate.c | 30 struct folio *folio; in clear_shadow_entries() local 42 xas_for_each(&xas, folio, max) { in clear_shadow_entries() 43 if (xa_is_value(folio)) in clear_shadow_entries() 65 struct folio *folio; in truncate_folio_batch_exceptionals() local 107 xas_for_each(&xas, folio, indices[nr-1]) { in truncate_folio_batch_exceptionals() 108 if (xa_is_value(folio)) in truncate_folio_batch_exceptionals() 135 void folio_invalidate(struct folio *folio, size_t offset, size_t length) in folio_invalidate() argument 137 const struct address_space_operations *aops = folio->mapping->a_ops; in folio_invalidate() 140 aops->invalidate_folio(folio, offset, length); in folio_invalidate() 154 static void truncate_cleanup_folio(struct folio *folio) in truncate_cleanup_folio() argument [all …]
|
| H A D | page_io.c | 32 struct folio *folio = bio_first_folio_all(bio); in __end_swap_bio_write() local 43 folio_mark_dirty(folio); in __end_swap_bio_write() 47 folio_clear_reclaim(folio); in __end_swap_bio_write() 49 folio_end_writeback(folio); in __end_swap_bio_write() 60 struct folio *folio = bio_first_folio_all(bio); in __end_swap_bio_read() local 67 folio_mark_uptodate(folio); in __end_swap_bio_read() 69 folio_unlock(folio); in __end_swap_bio_read() 174 static bool is_folio_zero_filled(struct folio *foli argument 204 swap_zeromap_folio_set(struct folio * folio) swap_zeromap_folio_set() argument 224 swap_zeromap_folio_clear(struct folio * folio) swap_zeromap_folio_clear() argument 240 swap_writeout(struct folio * folio,struct swap_iocb ** swap_plug) swap_writeout() argument 291 count_swpout_vm_event(struct folio * folio) count_swpout_vm_event() argument 305 bio_associate_blkg_from_page(struct bio * bio,struct folio * folio) bio_associate_blkg_from_page() argument 320 bio_associate_blkg_from_page(bio,folio) global() argument 374 swap_writepage_fs(struct folio * folio,struct swap_iocb ** swap_plug) swap_writepage_fs() argument 410 swap_writepage_bdev_sync(struct folio * folio,struct swap_info_struct * sis) swap_writepage_bdev_sync() argument 430 swap_writepage_bdev_async(struct folio * folio,struct swap_info_struct * sis) swap_writepage_bdev_async() argument 447 __swap_writepage(struct folio * folio,struct swap_iocb ** swap_plug) __swap_writepage() argument 489 struct folio *folio = page_folio(sio->bvec[p].bv_page); sio_read_complete() local 499 struct folio *folio = page_folio(sio->bvec[p].bv_page); sio_read_complete() local 508 swap_read_folio_zeromap(struct folio * folio) swap_read_folio_zeromap() argument 538 swap_read_folio_fs(struct folio * folio,struct swap_iocb ** plug) swap_read_folio_fs() argument 572 swap_read_folio_bdev_sync(struct folio * folio,struct swap_info_struct * sis) swap_read_folio_bdev_sync() argument 594 swap_read_folio_bdev_async(struct folio * folio,struct swap_info_struct * sis) swap_read_folio_bdev_async() argument 609 swap_read_folio(struct folio * folio,struct swap_iocb ** plug) swap_read_folio() argument [all...] |
| H A D | filemap.c | 130 struct folio *folio, void *shadow) in page_cache_delete() argument 132 XA_STATE(xas, &mapping->i_pages, folio->index); in page_cache_delete() 137 xas_set_order(&xas, folio->index, folio_order(folio)); in page_cache_delete() 138 nr = folio_nr_pages(folio); in page_cache_delete() 140 VM_BUG_ON_FOLIO(!folio_test_locked(folio), folio); in page_cache_delete() 145 folio->mapping = NULL; in page_cache_delete() 151 struct folio *folio) in filemap_unaccount_folio() argument 155 VM_BUG_ON_FOLIO(folio_mapped(folio), folio); in filemap_unaccount_folio() 156 if (!IS_ENABLED(CONFIG_DEBUG_VM) && unlikely(folio_mapped(folio))) { in filemap_unaccount_folio() 158 current->comm, folio_pfn(folio)); in filemap_unaccount_folio() [all …]
|
| H A D | rmap.c | 587 struct anon_vma *folio_get_anon_vma(const struct folio *folio) in folio_get_anon_vma() argument 592 VM_WARN_ON_FOLIO(!folio_test_locked(folio), folio); in folio_get_anon_vma() 595 anon_mapping = (unsigned long)READ_ONCE(folio->mapping); in folio_get_anon_vma() 598 if (!folio_mapped(folio)) in folio_get_anon_vma() 614 if (!folio_mapped(folio)) { in folio_get_anon_vma() 633 struct anon_vma *folio_lock_anon_vma_read(const struct folio *folio, in folio_lock_anon_vma_read() argument 640 VM_WARN_ON_FOLIO(!folio_test_locked(folio), folio); in folio_lock_anon_vma_read() 643 anon_mapping = (unsigned long)READ_ONCE(folio->mapping); in folio_lock_anon_vma_read() 646 if (!folio_mapped(folio)) in folio_lock_anon_vma_read() 657 if (!folio_mapped(folio)) { in folio_lock_anon_vma_read() [all …]
|
| H A D | swap_state.c | 87 struct folio *swap_cache_get_folio(swp_entry_t entry) in swap_cache_get_folio() 90 struct folio *folio; in swap_cache_get_folio() local 97 folio = swp_tb_to_folio(swp_tb); in swap_cache_get_folio() 98 if (likely(folio_try_get(folio))) in swap_cache_get_folio() 99 return folio; in swap_cache_get_folio() 141 struct folio *folio, swp_entry_t entry) in __swap_cache_add_folio() argument 145 unsigned long nr_pages = folio_nr_pages(folio); in __swap_cache_add_folio() 147 VM_WARN_ON_ONCE_FOLIO(!folio_test_locked(folio), folio); in __swap_cache_add_folio() 148 VM_WARN_ON_ONCE_FOLIO(folio_test_swapcache(folio), folio); in __swap_cache_add_folio() 149 VM_WARN_ON_ONCE_FOLIO(!folio_test_swapbacked(folio), folio); in __swap_cache_add_folio() [all …]
|
| H A D | swap.h | 135 const struct folio *folio, bool irq) in __swap_cluster_get_and_lock() argument 137 VM_WARN_ON_ONCE_FOLIO(!folio_test_locked(folio), folio); in __swap_cluster_get_and_lock() 138 VM_WARN_ON_ONCE_FOLIO(!folio_test_swapcache(folio), folio); in __swap_cluster_get_and_lock() 139 return __swap_cluster_lock(__swap_entry_to_info(folio->swap), in __swap_cluster_get_and_lock() 140 swp_offset(folio->swap), irq); in __swap_cluster_get_and_lock() 144 * swap_cluster_get_and_lock - Locks the cluster that holds a folio's entries. 145 * @folio 156 swap_cluster_get_and_lock(const struct folio * folio) swap_cluster_get_and_lock() argument 171 swap_cluster_get_and_lock_irq(const struct folio * folio) swap_cluster_get_and_lock_irq() argument 224 folio_matches_swap_entry(const struct folio * folio,swp_entry_t entry) folio_matches_swap_entry() argument 274 folio_swap_flags(struct folio * folio) folio_swap_flags() argument 332 swap_cluster_get_and_lock(struct folio * folio) swap_cluster_get_and_lock() argument 338 swap_cluster_get_and_lock_irq(struct folio * folio) swap_cluster_get_and_lock_irq() argument 356 swap_read_folio(struct folio * folio,struct swap_iocb ** plug) swap_read_folio() argument 368 folio_matches_swap_entry(const struct folio * folio,swp_entry_t entry) folio_matches_swap_entry() argument 389 swap_update_readahead(struct folio * folio,struct vm_area_struct * vma,unsigned long addr) swap_update_readahead() argument 394 swap_writeout(struct folio * folio,struct swap_iocb ** swap_plug) swap_writeout() argument 414 swap_cache_add_folio(struct folio * folio,swp_entry_t entry,void ** shadow) swap_cache_add_folio() argument 418 swap_cache_del_folio(struct folio * folio) swap_cache_del_folio() argument 423 __swap_cache_del_folio(struct swap_cluster_info * ci,struct folio * folio,swp_entry_t entry,void * shadow) __swap_cache_del_folio() argument 432 folio_swap_flags(struct folio * folio) folio_swap_flags() argument [all...] |
| H A D | mlock.c | 61 static struct lruvec *__mlock_folio(struct folio *folio, struct lruvec *lruvec) in __mlock_folio() argument 64 if (!folio_test_clear_lru(folio)) in __mlock_folio() 67 lruvec = folio_lruvec_relock_irq(folio, lruvec); in __mlock_folio() 69 if (unlikely(folio_evictable(folio))) { in __mlock_folio() 75 if (folio_test_unevictable(folio)) { in __mlock_folio() 76 lruvec_del_folio(lruvec, folio); in __mlock_folio() 77 folio_clear_unevictable(folio); in __mlock_folio() 78 lruvec_add_folio(lruvec, folio); in __mlock_folio() 81 folio_nr_pages(folio)); in __mlock_folio() 86 if (folio_test_unevictable(folio)) { in __mlock_folio() [all …]
|
| H A D | migrate.c | 119 struct folio *folio = folio_get_nontail_page(page); in isolate_movable_ops_page() local 131 if (!folio) in isolate_movable_ops_page() 156 if (unlikely(!folio_trylock(folio))) in isolate_movable_ops_page() 173 folio_unlock(folio); in isolate_movable_ops_page() 178 folio_unlock(folio); in isolate_movable_ops_page() 180 folio_put(folio); in isolate_movable_ops_page() 199 struct folio *folio = page_folio(page); in putback_movable_ops_page() local 203 folio_lock(folio); in putback_movable_ops_page() 206 folio_unlock(folio); in putback_movable_ops_page() 207 folio_put(folio); in putback_movable_ops_page() [all …]
|
| H A D | memory-failure.c | 317 void shake_folio(struct folio *folio) in shake_folio() argument 319 if (folio_test_hugetlb(folio)) in shake_folio() 325 if (folio_test_slab(folio)) in shake_folio() 545 static void collect_procs_anon(const struct folio *folio, in collect_procs_anon() argument 553 av = folio_lock_anon_vma_read(folio, NULL); in collect_procs_anon() 557 pgoff = page_pgoff(folio, page); in collect_procs_anon() 583 static void collect_procs_file(const struct folio *folio, in collect_procs_file() argument 589 struct address_space *mapping = folio->mapping; in collect_procs_file() 594 pgoff = page_pgoff(folio, page); in collect_procs_file() 612 addr = page_address_in_vma(folio, page, vma); in collect_procs_file() [all …]
|
| /linux/fs/iomap/ |
| H A D | buffered-io.c | 34 static inline bool ifs_is_fully_uptodate(struct folio *folio, in ifs_is_fully_uptodate() argument 37 struct inode *inode = folio->mapping->host; in ifs_is_fully_uptodate() 39 return bitmap_full(ifs->state, i_blocks_per_folio(inode, folio)); in ifs_is_fully_uptodate() 46 static unsigned ifs_next_uptodate_block(struct folio *folio, in ifs_next_uptodate_block() argument 49 struct iomap_folio_state *ifs = folio->private; in ifs_next_uptodate_block() 58 static unsigned ifs_next_nonuptodate_block(struct folio *folio, in ifs_next_nonuptodate_block() argument 61 struct iomap_folio_state *ifs = folio->private; in ifs_next_nonuptodate_block() 66 static bool ifs_set_range_uptodate(struct folio *folio, in ifs_set_range_uptodate() argument 69 struct inode *inode = folio->mapping->host; in ifs_set_range_uptodate() 75 return ifs_is_fully_uptodate(folio, ifs); in ifs_set_range_uptodate() [all …]
|
| /linux/include/linux/ |
| H A D | pagemap.h | 551 struct address_space *folio_mapping(const struct folio *folio); 565 static inline struct address_space *folio_flush_mapping(struct folio *folio) in folio_flush_mapping() argument 567 if (unlikely(folio_test_swapcache(folio))) in folio_flush_mapping() 570 return folio_mapping(folio); in folio_flush_mapping() 582 static inline struct inode *folio_inode(struct folio *folio) in folio_inode() argument 584 return folio->mapping->host; in folio_inode() 595 static inline void folio_attach_private(struct folio *folio, void *data) in folio_attach_private() argument 597 folio_get(folio); in folio_attach_private() 598 folio->private = data; in folio_attach_private() 599 folio_set_private(folio); in folio_attach_private() [all …]
|
| H A D | hugetlb_cgroup.h | 61 __hugetlb_cgroup_from_folio(struct folio *folio, bool rsvd) in __hugetlb_cgroup_from_folio() argument 63 VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio); in __hugetlb_cgroup_from_folio() 65 return folio->_hugetlb_cgroup_rsvd; in __hugetlb_cgroup_from_folio() 67 return folio->_hugetlb_cgroup; in __hugetlb_cgroup_from_folio() 70 static inline struct hugetlb_cgroup *hugetlb_cgroup_from_folio(struct folio *folio) in hugetlb_cgroup_from_folio() argument 72 return __hugetlb_cgroup_from_folio(folio, false); in hugetlb_cgroup_from_folio() 76 hugetlb_cgroup_from_folio_rsvd(struct folio *folio) in hugetlb_cgroup_from_folio_rsvd() argument 78 return __hugetlb_cgroup_from_folio(folio, true); in hugetlb_cgroup_from_folio_rsvd() 81 static inline void __set_hugetlb_cgroup(struct folio *folio, in __set_hugetlb_cgroup() argument 84 VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio); in __set_hugetlb_cgroup() [all …]
|
| H A D | mm_inline.h | 28 static inline int folio_is_file_lru(const struct folio *folio) in folio_is_file_lru() argument 30 return !folio_test_swapbacked(folio); in folio_is_file_lru() 66 static __always_inline void __folio_clear_lru_flags(struct folio *folio) in __folio_clear_lru_flags() argument 68 VM_BUG_ON_FOLIO(!folio_test_lru(folio), folio); in __folio_clear_lru_flags() 70 __folio_clear_lru(folio); in __folio_clear_lru_flags() 73 if (folio_test_active(folio) && folio_test_unevictable(folio)) in __folio_clear_lru_flags() 76 __folio_clear_active(folio); in __folio_clear_lru_flags() 77 __folio_clear_unevictable(folio); in __folio_clear_lru_flags() 87 static __always_inline enum lru_list folio_lru_list(const struct folio *folio) in folio_lru_list() argument 91 VM_BUG_ON_FOLIO(folio_test_active(folio) && folio_test_unevictable(folio), folio); in folio_lru_list() [all …]
|
| H A D | page_ref.h | 87 static inline int folio_ref_count(const struct folio *folio) in folio_ref_count() argument 89 return page_ref_count(&folio->page); in folio_ref_count() 104 static inline void folio_set_count(struct folio *folio, int v) in folio_set_count() argument 106 set_page_count(&folio->page, v); in folio_set_count() 125 static inline void folio_ref_add(struct folio *folio, int nr) in folio_ref_add() argument 127 page_ref_add(&folio->page, nr); in folio_ref_add() 137 static inline void folio_ref_sub(struct folio *folio, int nr) in folio_ref_sub() argument 139 page_ref_sub(&folio->page, nr); in folio_ref_sub() 142 static inline int folio_ref_sub_return(struct folio *folio, int nr) in folio_ref_sub_return() argument 144 int ret = atomic_sub_return(nr, &folio->_refcount); in folio_ref_sub_return() [all …]
|
| H A D | swap.h | 307 struct folio *folio = page_folio(page); in page_swap_entry() 308 swp_entry_t entry = folio->swap; in page_swap_entry() 310 entry.val += folio_page_idx(folio, page); in page_swap_entry() 318 void *workingset_eviction(struct folio *folio, struct mem_cgroup *target_memcg); 319 void workingset_refault(struct folio *folio, void *shadow); 320 void workingset_activation(struct folio *folio); 309 struct folio *folio = page_folio(page); page_swap_entry() local 341 folio_may_be_lru_cached(struct folio * folio) folio_may_be_lru_cached() argument 499 free_folio_and_swap_cache(folio) global() argument 508 free_swap_cache(struct folio * folio) free_swap_cache() argument 535 put_swap_folio(struct folio * folio,swp_entry_t swp) put_swap_folio() argument 554 folio_alloc_swap(struct folio * folio) folio_alloc_swap() argument 559 folio_free_swap(struct folio * folio) folio_free_swap() argument 604 folio_throttle_swaprate(struct folio * folio,gfp_t gfp) folio_throttle_swaprate() argument 611 folio_throttle_swaprate(struct folio * folio,gfp_t gfp) folio_throttle_swaprate() argument 618 mem_cgroup_try_charge_swap(struct folio * folio,swp_entry_t entry) mem_cgroup_try_charge_swap() argument 637 mem_cgroup_try_charge_swap(struct folio * folio,swp_entry_t entry) mem_cgroup_try_charge_swap() argument 653 mem_cgroup_swap_full(struct folio * folio) mem_cgroup_swap_full() argument [all...] |
| H A D | memremap.h | 83 void (*folio_free)(struct folio *folio); 108 void (*folio_split)(struct folio *head, struct folio *tail); 166 static inline bool folio_is_device_private(const struct folio *folio) in folio_is_device_private() argument 169 folio_is_zone_device(folio) && in folio_is_device_private() 170 folio->pgmap->type == MEMORY_DEVICE_PRIVATE; in folio_is_device_private() 179 static inline bool folio_is_pci_p2pdma(const struct folio *folio) in folio_is_pci_p2pdma() argument 182 folio_is_zone_device(folio) && in folio_is_pci_p2pdma() 183 folio->pgmap->type == MEMORY_DEVICE_PCI_P2PDMA; in folio_is_pci_p2pdma() 186 static inline void *folio_zone_device_data(const struct folio *folio) in folio_zone_device_data() argument 188 VM_WARN_ON_FOLIO(!folio_is_device_private(folio), folio); in folio_zone_device_data() [all …]
|
| /linux/fs/jfs/ |
| H A D | jfs_metapage.c | 51 folio_unlock(mp->folio); in __lock_metapage() 53 folio_lock(mp->folio); in __lock_metapage() 84 static inline struct metapage *folio_to_mp(struct folio *folio, int offset) in folio_to_mp() argument 86 struct meta_anchor *anchor = folio->private; in folio_to_mp() 93 static inline int insert_metapage(struct folio *folio, struct metapage *mp) in insert_metapage() argument 99 a = folio->private; in insert_metapage() 104 folio_attach_private(folio, a); in insert_metapage() 105 kmap(&folio->page); in insert_metapage() 109 l2mp_blocks = L2PSIZE - folio->mapping->host->i_blkbits; in insert_metapage() 118 static inline void remove_metapage(struct folio *folio, struct metapage *mp) in remove_metapage() argument [all …]
|
| /linux/mm/damon/ |
| H A D | ops-common.c | 26 struct folio *damon_get_folio(unsigned long pfn) in damon_get_folio() 29 struct folio *folio; in damon_get_folio() local 34 folio = page_folio(page); in damon_get_folio() 35 if (!folio_test_lru(folio) || !folio_try_get(folio)) in damon_get_folio() 37 if (unlikely(page_folio(page) != folio || !folio_test_lru(folio))) { in damon_get_folio() 38 folio_put(folio); in damon_get_folio() 39 folio = NULL; in damon_get_folio() 41 return folio; in damon_get_folio() 47 struct folio *folio; in damon_ptep_mkold() local 56 folio = damon_get_folio(pfn); in damon_ptep_mkold() [all …]
|
| H A D | paddr.c | 42 struct folio *folio = damon_get_folio(PHYS_PFN(paddr)); in damon_pa_mkold() local 44 if (!folio) in damon_pa_mkold() 47 damon_folio_mkold(folio); in damon_pa_mkold() 48 folio_put(folio); in damon_pa_mkold() 72 struct folio *folio = damon_get_folio(PHYS_PFN(paddr)); in damon_pa_young() local 75 if (!folio) in damon_pa_young() 78 accessed = damon_folio_young(folio); in damon_pa_young() 79 *folio_sz = folio_size(folio); in damon_pa_young() 126 damos_pa_filter_out(struct damos * scheme,struct folio * folio) damos_pa_filter_out() argument 140 damon_pa_invalid_damos_folio(struct folio * folio,struct damos * s) damon_pa_invalid_damos_folio() argument 159 struct folio *folio; damon_pa_pageout() local 215 struct folio *folio; damon_pa_mark_accessed_or_deactivate() local 265 struct folio *folio; damon_pa_migrate() local 298 struct folio *folio; damon_pa_stat() local [all...] |
| /linux/fs/ubifs/ |
| H A D | file.c | 45 static int read_block(struct inode *inode, struct folio *folio, size_t offset, in read_block() argument 58 folio_zero_range(folio, offset, UBIFS_BLOCK_SIZE); in read_block() 77 err = ubifs_decompress_folio(c, &dn->data, dlen, folio, offset, in read_block() 88 folio_zero_range(folio, offset + len, UBIFS_BLOCK_SIZE - len); in read_block() 99 static int do_readpage(struct folio *folio) in do_readpage() argument 104 struct inode *inode = folio->mapping->host; in do_readpage() 110 inode->i_ino, folio->index, i_size, folio->flags.f); in do_readpage() 111 ubifs_assert(c, !folio_test_checked(folio)); in do_readpage() 112 ubifs_assert(c, !folio->private); in do_readpage() 114 block = folio->index << UBIFS_BLOCKS_PER_PAGE_SHIFT; in do_readpage() [all …]
|
| /linux/fs/nilfs2/ |
| H A D | page.c | 28 static struct buffer_head *__nilfs_get_folio_block(struct folio *folio, in __nilfs_get_folio_block() argument 34 struct buffer_head *bh = folio_buffers(folio); in __nilfs_get_folio_block() 37 bh = create_empty_buffers(folio, 1 << blkbits, b_state); in __nilfs_get_folio_block() 53 struct folio *folio; in nilfs_grab_buffer() local 56 folio = filemap_grab_folio(mapping, index); in nilfs_grab_buffer() 57 if (IS_ERR(folio)) in nilfs_grab_buffer() 60 bh = __nilfs_get_folio_block(folio, blkoff, index, blkbits, b_state); in nilfs_grab_buffer() 62 folio_unlock(folio); in nilfs_grab_buffer() 63 folio_put(folio); in nilfs_grab_buffer() 76 struct folio *folio = bh->b_folio; in nilfs_forget_buffer() local [all …]
|
| /linux/fs/ecryptfs/ |
| H A D | mmap.c | 33 struct folio *folio = NULL; in ecryptfs_writepages() local 36 while ((folio = writeback_iter(mapping, wbc, folio, &error))) { in ecryptfs_writepages() 37 error = ecryptfs_encrypt_page(folio); in ecryptfs_writepages() 41 folio->index); in ecryptfs_writepages() 42 folio_clear_uptodate(folio); in ecryptfs_writepages() 45 folio_unlock(folio); in ecryptfs_writepages() 91 ecryptfs_copy_up_encrypted_with_header(struct folio *folio, in ecryptfs_copy_up_encrypted_with_header() argument 100 loff_t view_extent_num = ((loff_t)folio->index in ecryptfs_copy_up_encrypted_with_header() 110 page_virt = kmap_local_folio(folio, 0); in ecryptfs_copy_up_encrypted_with_header() 117 page_virt, folio->mapping->host); in ecryptfs_copy_up_encrypted_with_header() [all …]
|
| /linux/fs/netfs/ |
| H A D | buffered_write.c | 16 static void __netfs_set_group(struct folio *folio, struct netfs_group *netfs_group) in __netfs_set_group() argument 19 folio_attach_private(folio, netfs_get_group(netfs_group)); in __netfs_set_group() 22 static void netfs_set_group(struct folio *folio, struct netfs_group *netfs_group) in netfs_set_group() argument 24 void *priv = folio_get_private(folio); in netfs_set_group() 28 folio_attach_private(folio, netfs_get_group(netfs_group)); in netfs_set_group() 30 folio_detach_private(folio); in netfs_set_group() 38 static struct folio *netfs_grab_folio_for_write(struct address_space *mapping, in netfs_grab_folio_for_write() 121 struct folio *folio = NULL, *writethrough = NULL; in netfs_perform_write() local 179 folio = netfs_grab_folio_for_write(mapping, pos, part); in netfs_perform_write() 180 if (IS_ERR(folio)) { in netfs_perform_write() [all …]
|
| /linux/fs/ |
| H A D | mpage.c | 52 folio_end_read(fi.folio, err == 0); in mpage_read_end_io() 64 mapping_set_error(fi.folio->mapping, err); in mpage_write_end_io() 65 folio_end_writeback(fi.folio); in mpage_write_end_io() 97 static void map_buffer_to_folio(struct folio *folio, struct buffer_head *bh, in map_buffer_to_folio() argument 100 struct inode *inode = folio->mapping->host; in map_buffer_to_folio() 104 head = folio_buffers(folio); in map_buffer_to_folio() 110 if (inode->i_blkbits == folio_shift(folio) && in map_buffer_to_folio() 112 folio_mark_uptodate(folio); in map_buffer_to_folio() 115 head = create_empty_buffers(folio, i_blocksize(inode), 0); in map_buffer_to_folio() 133 struct folio *folio; member [all …]
|