Lines Matching refs:dn
38 struct dnode_of_data dn; in f2fs_vm_page_mkwrite() local
49 set_new_dnode(&dn, inode, NULL, NULL, 0); in f2fs_vm_page_mkwrite()
50 err = f2fs_reserve_block(&dn, page->index); in f2fs_vm_page_mkwrite()
55 f2fs_put_dnode(&dn); in f2fs_vm_page_mkwrite()
317 struct dnode_of_data dn; in f2fs_seek_block() local
341 set_new_dnode(&dn, inode, NULL, NULL, 0); in f2fs_seek_block()
342 err = get_dnode_of_data(&dn, pgofs, LOOKUP_NODE_RA); in f2fs_seek_block()
356 end_offset = ADDRS_PER_PAGE(dn.node_page, F2FS_I(inode)); in f2fs_seek_block()
359 for (; dn.ofs_in_node < end_offset; in f2fs_seek_block()
360 dn.ofs_in_node++, pgofs++, in f2fs_seek_block()
363 blkaddr = datablock_addr(dn.node_page, dn.ofs_in_node); in f2fs_seek_block()
366 f2fs_put_dnode(&dn); in f2fs_seek_block()
370 f2fs_put_dnode(&dn); in f2fs_seek_block()
422 int truncate_data_blocks_range(struct dnode_of_data *dn, int count) in truncate_data_blocks_range() argument
424 int nr_free = 0, ofs = dn->ofs_in_node; in truncate_data_blocks_range()
425 struct f2fs_sb_info *sbi = F2FS_I_SB(dn->inode); in truncate_data_blocks_range()
429 raw_node = F2FS_NODE(dn->node_page); in truncate_data_blocks_range()
432 for (; count > 0; count--, addr++, dn->ofs_in_node++) { in truncate_data_blocks_range()
437 dn->data_blkaddr = NULL_ADDR; in truncate_data_blocks_range()
438 set_data_blkaddr(dn); in truncate_data_blocks_range()
439 f2fs_update_extent_cache(dn); in truncate_data_blocks_range()
441 if (dn->ofs_in_node == 0 && IS_INODE(dn->node_page)) in truncate_data_blocks_range()
442 clear_inode_flag(F2FS_I(dn->inode), in truncate_data_blocks_range()
447 dec_valid_block_count(sbi, dn->inode, nr_free); in truncate_data_blocks_range()
448 set_page_dirty(dn->node_page); in truncate_data_blocks_range()
449 sync_inode_page(dn); in truncate_data_blocks_range()
451 dn->ofs_in_node = ofs; in truncate_data_blocks_range()
453 trace_f2fs_truncate_data_blocks_range(dn->inode, dn->nid, in truncate_data_blocks_range()
454 dn->ofs_in_node, nr_free); in truncate_data_blocks_range()
458 void truncate_data_blocks(struct dnode_of_data *dn) in truncate_data_blocks() argument
460 truncate_data_blocks_range(dn, ADDRS_PER_BLOCK); in truncate_data_blocks()
494 struct dnode_of_data dn; in truncate_blocks() local
521 set_new_dnode(&dn, inode, ipage, NULL, 0); in truncate_blocks()
522 err = get_dnode_of_data(&dn, free_from, LOOKUP_NODE); in truncate_blocks()
529 count = ADDRS_PER_PAGE(dn.node_page, F2FS_I(inode)); in truncate_blocks()
531 count -= dn.ofs_in_node; in truncate_blocks()
534 if (dn.ofs_in_node || IS_INODE(dn.node_page)) { in truncate_blocks()
535 truncate_data_blocks_range(&dn, count); in truncate_blocks()
539 f2fs_put_dnode(&dn); in truncate_blocks()
695 struct dnode_of_data dn; in truncate_hole() local
697 set_new_dnode(&dn, inode, NULL, NULL, 0); in truncate_hole()
698 err = get_dnode_of_data(&dn, index, LOOKUP_NODE); in truncate_hole()
705 if (dn.data_blkaddr != NULL_ADDR) in truncate_hole()
706 truncate_data_blocks_range(&dn, 1); in truncate_hole()
707 f2fs_put_dnode(&dn); in truncate_hole()
798 struct dnode_of_data dn; in expand_inode_data() local
803 set_new_dnode(&dn, inode, NULL, NULL, 0); in expand_inode_data()
804 ret = f2fs_reserve_block(&dn, index); in expand_inode_data()