Lines Matching refs:dn

494 			block_t blkaddr, struct dnode_of_data *dn)
502 struct dnode_of_data tdn = *dn;
534 max_addrs = ADDRS_PER_PAGE(dn->node_page, dn->inode);
537 ofs_in_node, dn->inode->i_ino, nid, max_addrs);
542 if (dn->inode->i_ino == nid) {
544 if (!dn->inode_page_locked)
545 lock_page(dn->inode_page);
546 tdn.node_page = dn->inode_page;
549 } else if (dn->nid == nid) {
563 if (ino != dn->inode->i_ino) {
577 inode = dn->inode;
587 if (ino == dn->inode->i_ino && dn->inode_page_locked)
588 unlock_page(dn->inode_page);
599 if (ino != dn->inode->i_ino)
601 else if (dn->inode_page_locked)
602 lock_page(dn->inode_page);
608 if (dn->inode->i_ino == nid && !dn->inode_page_locked)
609 unlock_page(dn->inode_page);
613 static int f2fs_reserve_new_block_retry(struct dnode_of_data *dn)
618 err = f2fs_reserve_new_block(dn);
629 struct dnode_of_data dn;
658 set_new_dnode(&dn, inode, NULL, NULL, 0);
660 err = f2fs_get_dnode_of_data(&dn, start, ALLOC_NODE);
669 f2fs_wait_on_page_writeback(dn.node_page, NODE, true, true);
671 err = f2fs_get_node_info(sbi, dn.nid, &ni, false);
677 if (ofs_of_node(dn.node_page) != ofs_of_node(page)) {
679 inode->i_ino, ofs_of_node(dn.node_page),
686 for (; start < end; start++, dn.ofs_in_node++) {
689 src = f2fs_data_blkaddr(&dn);
690 dest = data_blkaddr(dn.inode, page, dn.ofs_in_node);
710 f2fs_truncate_data_blocks_range(&dn, 1);
724 f2fs_truncate_data_blocks_range(&dn, 1);
726 err = f2fs_reserve_new_block_retry(&dn);
735 err = f2fs_reserve_new_block_retry(&dn);
741 err = check_index_in_prev_nodes(sbi, dest, &dn);
753 dest, inode->i_ino, dn.ofs_in_node);
759 f2fs_replace_block(sbi, &dn, src, dest,
765 copy_node_footer(dn.node_page, page);
766 fill_node_footer(dn.node_page, dn.nid, ni.ino,
768 set_page_dirty(dn.node_page);
770 f2fs_put_dnode(&dn);