Lines Matching refs:ipage
45 void f2fs_do_read_inline_data(struct page *page, struct page *ipage) in f2fs_do_read_inline_data() argument
58 src_addr = inline_data_addr(inode, ipage); in f2fs_do_read_inline_data()
68 struct page *ipage, u64 from) in f2fs_truncate_inline_inode() argument
75 addr = inline_data_addr(inode, ipage); in f2fs_truncate_inline_inode()
77 f2fs_wait_on_page_writeback(ipage, NODE, true, true); in f2fs_truncate_inline_inode()
79 set_page_dirty(ipage); in f2fs_truncate_inline_inode()
87 struct page *ipage; in f2fs_read_inline_data() local
89 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino); in f2fs_read_inline_data()
90 if (IS_ERR(ipage)) { in f2fs_read_inline_data()
92 return PTR_ERR(ipage); in f2fs_read_inline_data()
96 f2fs_put_page(ipage, 1); in f2fs_read_inline_data()
103 f2fs_do_read_inline_data(page, ipage); in f2fs_read_inline_data()
107 f2fs_put_page(ipage, 1); in f2fs_read_inline_data()
188 struct page *ipage, *page; in f2fs_convert_inline_inode() local
205 ipage = f2fs_get_node_page(sbi, inode->i_ino); in f2fs_convert_inline_inode()
206 if (IS_ERR(ipage)) { in f2fs_convert_inline_inode()
207 err = PTR_ERR(ipage); in f2fs_convert_inline_inode()
211 set_new_dnode(&dn, inode, ipage, ipage, 0); in f2fs_convert_inline_inode()
268 struct page *ipage; in f2fs_recover_inline_data() local
284 ipage = f2fs_get_node_page(sbi, inode->i_ino); in f2fs_recover_inline_data()
285 if (IS_ERR(ipage)) in f2fs_recover_inline_data()
286 return PTR_ERR(ipage); in f2fs_recover_inline_data()
288 f2fs_wait_on_page_writeback(ipage, NODE, true, true); in f2fs_recover_inline_data()
291 dst_addr = inline_data_addr(inode, ipage); in f2fs_recover_inline_data()
297 set_page_dirty(ipage); in f2fs_recover_inline_data()
298 f2fs_put_page(ipage, 1); in f2fs_recover_inline_data()
303 ipage = f2fs_get_node_page(sbi, inode->i_ino); in f2fs_recover_inline_data()
304 if (IS_ERR(ipage)) in f2fs_recover_inline_data()
305 return PTR_ERR(ipage); in f2fs_recover_inline_data()
306 f2fs_truncate_inline_inode(inode, ipage, 0); in f2fs_recover_inline_data()
309 f2fs_put_page(ipage, 1); in f2fs_recover_inline_data()
329 struct page *ipage; in f2fs_find_in_inline_dir() local
332 ipage = f2fs_get_node_page(sbi, dir->i_ino); in f2fs_find_in_inline_dir()
333 if (IS_ERR(ipage)) { in f2fs_find_in_inline_dir()
334 *res_page = ipage; in f2fs_find_in_inline_dir()
338 inline_dentry = inline_data_addr(dir, ipage); in f2fs_find_in_inline_dir()
342 unlock_page(ipage); in f2fs_find_in_inline_dir()
348 *res_page = ipage; in f2fs_find_in_inline_dir()
350 f2fs_put_page(ipage, 0); in f2fs_find_in_inline_dir()
356 struct page *ipage) in f2fs_make_empty_inline_dir() argument
361 inline_dentry = inline_data_addr(inode, ipage); in f2fs_make_empty_inline_dir()
366 set_page_dirty(ipage); in f2fs_make_empty_inline_dir()
378 static int f2fs_move_inline_dirents(struct inode *dir, struct page *ipage, in f2fs_move_inline_dirents() argument
389 f2fs_put_page(ipage, 1); in f2fs_move_inline_dirents()
393 set_new_dnode(&dn, dir, ipage, NULL, 0); in f2fs_move_inline_dirents()
431 f2fs_truncate_inline_inode(dir, ipage, 0); in f2fs_move_inline_dirents()
504 static int f2fs_move_rehashed_dirents(struct inode *dir, struct page *ipage, in f2fs_move_rehashed_dirents() argument
513 f2fs_put_page(ipage, 1); in f2fs_move_rehashed_dirents()
518 f2fs_truncate_inline_inode(dir, ipage, 0); in f2fs_move_rehashed_dirents()
520 unlock_page(ipage); in f2fs_move_rehashed_dirents()
526 lock_page(ipage); in f2fs_move_rehashed_dirents()
542 lock_page(ipage); in f2fs_move_rehashed_dirents()
543 f2fs_wait_on_page_writeback(ipage, NODE, true, true); in f2fs_move_rehashed_dirents()
547 set_page_dirty(ipage); in f2fs_move_rehashed_dirents()
548 f2fs_put_page(ipage, 1); in f2fs_move_rehashed_dirents()
554 static int do_convert_inline_dir(struct inode *dir, struct page *ipage, in do_convert_inline_dir() argument
558 return f2fs_move_inline_dirents(dir, ipage, inline_dentry); in do_convert_inline_dir()
560 return f2fs_move_rehashed_dirents(dir, ipage, inline_dentry); in do_convert_inline_dir()
566 struct page *ipage; in f2fs_try_convert_inline_dir() local
580 ipage = f2fs_get_node_page(sbi, dir->i_ino); in f2fs_try_convert_inline_dir()
581 if (IS_ERR(ipage)) { in f2fs_try_convert_inline_dir()
582 err = PTR_ERR(ipage); in f2fs_try_convert_inline_dir()
586 if (f2fs_has_enough_room(dir, ipage, &fname)) { in f2fs_try_convert_inline_dir()
587 f2fs_put_page(ipage, 1); in f2fs_try_convert_inline_dir()
591 inline_dentry = inline_data_addr(dir, ipage); in f2fs_try_convert_inline_dir()
593 err = do_convert_inline_dir(dir, ipage, inline_dentry); in f2fs_try_convert_inline_dir()
595 f2fs_put_page(ipage, 1); in f2fs_try_convert_inline_dir()
607 struct page *ipage; in f2fs_add_inline_entry() local
615 ipage = f2fs_get_node_page(sbi, dir->i_ino); in f2fs_add_inline_entry()
616 if (IS_ERR(ipage)) in f2fs_add_inline_entry()
617 return PTR_ERR(ipage); in f2fs_add_inline_entry()
619 inline_dentry = inline_data_addr(dir, ipage); in f2fs_add_inline_entry()
624 err = do_convert_inline_dir(dir, ipage, inline_dentry); in f2fs_add_inline_entry()
633 page = f2fs_init_inode_metadata(inode, dir, fname, ipage); in f2fs_add_inline_entry()
640 f2fs_wait_on_page_writeback(ipage, NODE, true, true); in f2fs_add_inline_entry()
645 set_page_dirty(ipage); in f2fs_add_inline_entry()
663 f2fs_put_page(ipage, 1); in f2fs_add_inline_entry()
699 struct page *ipage; in f2fs_empty_inline_dir() local
704 ipage = f2fs_get_node_page(sbi, dir->i_ino); in f2fs_empty_inline_dir()
705 if (IS_ERR(ipage)) in f2fs_empty_inline_dir()
708 inline_dentry = inline_data_addr(dir, ipage); in f2fs_empty_inline_dir()
713 f2fs_put_page(ipage, 1); in f2fs_empty_inline_dir()
725 struct page *ipage = NULL; in f2fs_read_inline_dir() local
735 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino); in f2fs_read_inline_dir()
736 if (IS_ERR(ipage)) in f2fs_read_inline_dir()
737 return PTR_ERR(ipage); in f2fs_read_inline_dir()
743 unlock_page(ipage); in f2fs_read_inline_dir()
745 inline_dentry = inline_data_addr(inode, ipage); in f2fs_read_inline_dir()
753 f2fs_put_page(ipage, 0); in f2fs_read_inline_dir()
764 struct page *ipage; in f2fs_inline_data_fiemap() local
767 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino); in f2fs_inline_data_fiemap()
768 if (IS_ERR(ipage)) in f2fs_inline_data_fiemap()
769 return PTR_ERR(ipage); in f2fs_inline_data_fiemap()
794 byteaddr += (char *)inline_data_addr(inode, ipage) - in f2fs_inline_data_fiemap()
795 (char *)F2FS_INODE(ipage); in f2fs_inline_data_fiemap()
799 f2fs_put_page(ipage, 1); in f2fs_inline_data_fiemap()