Lines Matching refs:page

39  * We guarantee no failure on the returned page.
41 struct page *f2fs_grab_meta_page(struct f2fs_sb_info *sbi, pgoff_t index)
44 struct page *page;
46 page = f2fs_grab_cache_page(mapping, index, false);
47 if (!page) {
51 f2fs_wait_on_page_writeback(page, META, true, true);
52 if (!PageUptodate(page))
53 SetPageUptodate(page);
54 return page;
57 static struct page *__get_meta_page(struct f2fs_sb_info *sbi, pgoff_t index,
61 struct page *page;
77 page = f2fs_grab_cache_page(mapping, index, false);
78 if (!page) {
82 if (PageUptodate(page))
85 fio.page = page;
89 f2fs_put_page(page, 1);
95 lock_page(page);
96 if (unlikely(page->mapping != mapping)) {
97 f2fs_put_page(page, 1);
101 if (unlikely(!PageUptodate(page))) {
102 f2fs_handle_page_eio(sbi, page->index, META);
103 f2fs_put_page(page, 1);
107 return page;
110 struct page *f2fs_get_meta_page(struct f2fs_sb_info *sbi, pgoff_t index)
115 struct page *f2fs_get_meta_page_retry(struct f2fs_sb_info *sbi, pgoff_t index)
117 struct page *page;
121 page = __get_meta_page(sbi, index, true);
122 if (IS_ERR(page)) {
123 if (PTR_ERR(page) == -EIO &&
128 return page;
132 struct page *f2fs_get_tmp_page(struct f2fs_sb_info *sbi, pgoff_t index)
255 struct page *page;
303 page = f2fs_grab_cache_page(META_MAPPING(sbi),
305 if (!page)
307 if (PageUptodate(page)) {
308 f2fs_put_page(page, 1);
312 fio.page = page;
314 f2fs_put_page(page, err ? 1 : 0);
328 struct page *page;
334 page = find_get_page(META_MAPPING(sbi), index);
335 if (!page || !PageUptodate(page))
337 f2fs_put_page(page, 0);
343 static int __f2fs_write_meta_page(struct page *page,
347 struct f2fs_sb_info *sbi = F2FS_P_SB(page);
349 trace_f2fs_writepage(page_folio(page), META);
353 ClearPageUptodate(page);
355 unlock_page(page);
362 if (wbc->for_reclaim && page->index < GET_SUM_BLOCK(sbi, 0))
365 f2fs_do_write_meta_page(sbi, page, io_type);
369 f2fs_submit_merged_write_cond(sbi, NULL, page, 0, META);
371 unlock_page(page);
379 redirty_page_for_writepage(wbc, page);
383 static int f2fs_write_meta_page(struct page *page,
386 return __f2fs_write_meta_page(page, wbc, FS_META_IO);
465 f2fs_wait_on_page_writeback(&folio->page, META,
471 if (__f2fs_write_meta_page(&folio->page, &wbc,
502 set_page_private_reference(&folio->page);
759 struct page *page;
762 page = f2fs_get_meta_page(sbi, start_blk + i);
763 if (IS_ERR(page)) {
764 err = PTR_ERR(page);
768 orphan_blk = (struct f2fs_orphan_block *)page_address(page);
774 f2fs_put_page(page, 1);
778 f2fs_put_page(page, 1);
795 struct page *page = NULL;
804 * And, spin_lock should be avoided due to page operations below.
810 if (!page) {
811 page = f2fs_grab_meta_page(sbi, start_blk++);
813 (struct f2fs_orphan_block *)page_address(page);
828 set_page_dirty(page);
829 f2fs_put_page(page, 1);
832 page = NULL;
836 if (page) {
840 set_page_dirty(page);
841 f2fs_put_page(page, 1);
861 struct f2fs_checkpoint **cp_block, struct page **cp_page,
892 static struct page *validate_checkpoint(struct f2fs_sb_info *sbi,
895 struct page *cp_page_1 = NULL, *cp_page_2 = NULL;
937 struct page *cp1, *cp2, *cur_page;
1063 set_page_private_reference(&folio->page);
1421 struct page *page = f2fs_grab_meta_page(sbi, blk_addr);
1424 f2fs_wait_on_page_writeback(page, META, true, true);
1426 memcpy(page_address(page), src, PAGE_SIZE);
1428 set_page_dirty(page);
1429 if (unlikely(!clear_page_dirty_for_io(page)))
1432 /* writeout cp pack 2 page */
1433 err = __f2fs_write_meta_page(page, &wbc, FS_CP_META_IO);
1435 f2fs_put_page(page, 1);
1440 f2fs_put_page(page, 0);
1583 /* Here, we have one bio having CP pack except cp pack 2 page */
1596 /* barrier and flush checkpoint cp pack 2 page if it can */
1601 * invalidate intermediate page cache borrowed from meta inode which are
1625 * redirty superblock if metadata like node page or inode cache is