Lines Matching defs:ipage

64 void f2fs_do_read_inline_data(struct page *page, struct page *ipage)
76 memcpy_to_page(page, 0, inline_data_addr(inode, ipage),
83 struct page *ipage, u64 from)
90 addr = inline_data_addr(inode, ipage);
92 f2fs_wait_on_page_writeback(ipage, NODE, true, true);
94 set_page_dirty(ipage);
102 struct page *ipage;
104 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino);
105 if (IS_ERR(ipage)) {
107 return PTR_ERR(ipage);
111 f2fs_put_page(ipage, 1);
118 f2fs_do_read_inline_data(page, ipage);
122 f2fs_put_page(ipage, 1);
203 struct page *ipage, *page;
220 ipage = f2fs_get_node_page(sbi, inode->i_ino);
221 if (IS_ERR(ipage)) {
222 err = PTR_ERR(ipage);
226 set_new_dnode(&dn, inode, ipage, ipage, 0);
280 struct page *ipage;
296 ipage = f2fs_get_node_page(sbi, inode->i_ino);
297 if (IS_ERR(ipage))
298 return PTR_ERR(ipage);
300 f2fs_wait_on_page_writeback(ipage, NODE, true, true);
303 dst_addr = inline_data_addr(inode, ipage);
309 set_page_dirty(ipage);
310 f2fs_put_page(ipage, 1);
315 ipage = f2fs_get_node_page(sbi, inode->i_ino);
316 if (IS_ERR(ipage))
317 return PTR_ERR(ipage);
318 f2fs_truncate_inline_inode(inode, ipage, 0);
321 f2fs_put_page(ipage, 1);
341 struct page *ipage;
344 ipage = f2fs_get_node_page(sbi, dir->i_ino);
345 if (IS_ERR(ipage)) {
346 *res_page = ipage;
350 inline_dentry = inline_data_addr(dir, ipage);
354 unlock_page(ipage);
360 *res_page = ipage;
362 f2fs_put_page(ipage, 0);
368 struct page *ipage)
373 inline_dentry = inline_data_addr(inode, ipage);
378 set_page_dirty(ipage);
387 * NOTE: ipage is grabbed by caller, but if any error occurs, we should
388 * release ipage in this function.
390 static int f2fs_move_inline_dirents(struct inode *dir, struct page *ipage,
401 f2fs_put_page(ipage, 1);
405 set_new_dnode(&dn, dir, ipage, NULL, 0);
443 f2fs_truncate_inline_inode(dir, ipage, 0);
516 static int f2fs_move_rehashed_dirents(struct inode *dir, struct page *ipage,
525 f2fs_put_page(ipage, 1);
530 f2fs_truncate_inline_inode(dir, ipage, 0);
532 unlock_page(ipage);
538 lock_page(ipage);
554 lock_page(ipage);
555 f2fs_wait_on_page_writeback(ipage, NODE, true, true);
559 set_page_dirty(ipage);
560 f2fs_put_page(ipage, 1);
566 static int do_convert_inline_dir(struct inode *dir, struct page *ipage,
570 return f2fs_move_inline_dirents(dir, ipage, inline_dentry);
572 return f2fs_move_rehashed_dirents(dir, ipage, inline_dentry);
578 struct page *ipage;
592 ipage = f2fs_get_node_page(sbi, dir->i_ino);
593 if (IS_ERR(ipage)) {
594 err = PTR_ERR(ipage);
598 if (f2fs_has_enough_room(dir, ipage, &fname)) {
599 f2fs_put_page(ipage, 1);
603 inline_dentry = inline_data_addr(dir, ipage);
605 err = do_convert_inline_dir(dir, ipage, inline_dentry);
607 f2fs_put_page(ipage, 1);
619 struct page *ipage;
627 ipage = f2fs_get_node_page(sbi, dir->i_ino);
628 if (IS_ERR(ipage))
629 return PTR_ERR(ipage);
631 inline_dentry = inline_data_addr(dir, ipage);
636 err = do_convert_inline_dir(dir, ipage, inline_dentry);
646 page = f2fs_init_inode_metadata(inode, dir, fname, ipage);
653 f2fs_wait_on_page_writeback(ipage, NODE, true, true);
658 set_page_dirty(ipage);
676 f2fs_put_page(ipage, 1);
712 struct page *ipage;
717 ipage = f2fs_get_node_page(sbi, dir->i_ino);
718 if (IS_ERR(ipage))
721 inline_dentry = inline_data_addr(dir, ipage);
726 f2fs_put_page(ipage, 1);
738 struct page *ipage = NULL;
748 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino);
749 if (IS_ERR(ipage))
750 return PTR_ERR(ipage);
754 * ipage without page's lock held.
756 unlock_page(ipage);
758 inline_dentry = inline_data_addr(inode, ipage);
766 f2fs_put_page(ipage, 0);
777 struct page *ipage;
780 ipage = f2fs_get_node_page(F2FS_I_SB(inode), inode->i_ino);
781 if (IS_ERR(ipage))
782 return PTR_ERR(ipage);
807 byteaddr += (char *)inline_data_addr(inode, ipage) -
808 (char *)F2FS_INODE(ipage);
812 f2fs_put_page(ipage, 1);