/fs/f2fs/ |
D | inode.c | 199 static bool sanity_check_inode(struct inode *inode, struct page *node_page) in sanity_check_inode() argument 203 struct f2fs_inode *ri = F2FS_INODE(node_page); in sanity_check_inode() 206 iblocks = le64_to_cpu(F2FS_INODE(node_page)->i_blocks); in sanity_check_inode() 214 if (ino_of_node(node_page) != nid_of_node(node_page)) { in sanity_check_inode() 218 ino_of_node(node_page), nid_of_node(node_page)); in sanity_check_inode() 327 struct page *node_page; in do_read_inode() local 336 node_page = f2fs_get_node_page(sbi, inode->i_ino); in do_read_inode() 337 if (IS_ERR(node_page)) in do_read_inode() 338 return PTR_ERR(node_page); in do_read_inode() 340 ri = F2FS_INODE(node_page); in do_read_inode() [all …]
|
D | node.h | 239 static inline nid_t ino_of_node(struct page *node_page) in ino_of_node() argument 241 struct f2fs_node *rn = F2FS_NODE(node_page); in ino_of_node() 245 static inline nid_t nid_of_node(struct page *node_page) in nid_of_node() argument 247 struct f2fs_node *rn = F2FS_NODE(node_page); in nid_of_node() 251 static inline unsigned int ofs_of_node(struct page *node_page) in ofs_of_node() argument 253 struct f2fs_node *rn = F2FS_NODE(node_page); in ofs_of_node() 258 static inline __u64 cpver_of_node(struct page *node_page) in cpver_of_node() argument 260 struct f2fs_node *rn = F2FS_NODE(node_page); in cpver_of_node() 264 static inline block_t next_blkaddr_of_node(struct page *node_page) in next_blkaddr_of_node() argument 266 struct f2fs_node *rn = F2FS_NODE(node_page); in next_blkaddr_of_node() [all …]
|
D | recovery.c | 446 struct page *sum_page, *node_page; in check_index_in_prev_nodes() local 478 max_addrs = ADDRS_PER_PAGE(dn->node_page, dn->inode); in check_index_in_prev_nodes() 489 tdn.node_page = dn->inode_page; in check_index_in_prev_nodes() 498 node_page = f2fs_get_node_page(sbi, nid); in check_index_in_prev_nodes() 499 if (IS_ERR(node_page)) in check_index_in_prev_nodes() 500 return PTR_ERR(node_page); in check_index_in_prev_nodes() 502 offset = ofs_of_node(node_page); in check_index_in_prev_nodes() 503 ino = ino_of_node(node_page); in check_index_in_prev_nodes() 504 f2fs_put_page(node_page, 1); in check_index_in_prev_nodes() 599 f2fs_wait_on_page_writeback(dn.node_page, NODE, true, true); in do_recover_data() [all …]
|
D | gc.c | 534 struct page *node_page; in gc_node_segment() local 557 node_page = f2fs_get_node_page(sbi, nid); in gc_node_segment() 558 if (IS_ERR(node_page)) in gc_node_segment() 563 f2fs_put_page(node_page, 1); in gc_node_segment() 568 f2fs_put_page(node_page, 1); in gc_node_segment() 573 f2fs_put_page(node_page, 1); in gc_node_segment() 577 err = f2fs_move_node_page(node_page, gc_type); in gc_node_segment() 621 struct page *node_page; in is_alive() local 629 node_page = f2fs_get_node_page(sbi, nid); in is_alive() 630 if (IS_ERR(node_page)) in is_alive() [all …]
|
D | node.c | 811 dn->node_page = npage[level]; in f2fs_get_dnode_of_data() 821 dn->node_page = NULL; in f2fs_get_dnode_of_data() 852 clear_node_page_dirty(dn->node_page); in truncate_node() 855 index = dn->node_page->index; in truncate_node() 856 f2fs_put_page(dn->node_page, 1); in truncate_node() 861 dn->node_page = NULL; in truncate_node() 883 dn->node_page = page; in truncate_dnode() 955 dn->node_page = page; in truncate_nodes() 1014 dn->node_page = pages[idx]; in truncate_partial_nodes() 1624 int f2fs_move_node_page(struct page *node_page, int gc_type) in f2fs_move_node_page() argument [all …]
|
D | file.c | 461 end_offset = ADDRS_PER_PAGE(dn.node_page, inode); in f2fs_seek_block() 567 if (IS_INODE(dn->node_page) && f2fs_has_extra_attr(dn->inode)) in f2fs_truncate_data_blocks_range() 570 raw_node = F2FS_NODE(dn->node_page); in f2fs_truncate_data_blocks_range() 600 if (dn->ofs_in_node == 0 && IS_INODE(dn->node_page)) in f2fs_truncate_data_blocks_range() 618 fofs = f2fs_start_bidx_of_node(ofs_of_node(dn->node_page), in f2fs_truncate_data_blocks_range() 709 count = ADDRS_PER_PAGE(dn.node_page, inode); in f2fs_do_truncate_blocks() 714 if (dn.ofs_in_node || IS_INODE(dn.node_page)) { in f2fs_do_truncate_blocks() 1042 end_offset = ADDRS_PER_PAGE(dn.node_page, inode); in f2fs_truncate_hole() 1137 done = min((pgoff_t)ADDRS_PER_PAGE(dn.node_page, inode) - in __read_out_blkaddrs() 1226 ADDRS_PER_PAGE(dn.node_page, dst_inode) - in __clone_blkaddrs() [all …]
|
D | f2fs.h | 965 struct page *node_page; /* cached direct node page */ member 981 dn->node_page = npage; in set_new_dnode() 2463 if (dn->node_page) in f2fs_put_dnode() 2464 f2fs_put_page(dn->node_page, 1); in f2fs_put_dnode() 2465 if (dn->inode_page && dn->node_page != dn->inode_page) in f2fs_put_dnode() 2467 dn->node_page = NULL; in f2fs_put_dnode() 2540 struct page *node_page, unsigned int offset) in data_blkaddr() argument 2545 bool is_inode = IS_INODE(node_page); in data_blkaddr() 2547 raw_node = F2FS_NODE(node_page); in data_blkaddr() 2563 return data_blkaddr(dn->inode, dn->node_page, dn->ofs_in_node); in f2fs_data_blkaddr() [all …]
|
D | data.c | 1102 struct f2fs_node *rn = F2FS_NODE(dn->node_page); in __set_data_blkaddr() 1106 if (IS_INODE(dn->node_page) && f2fs_has_extra_attr(dn->inode)) in __set_data_blkaddr() 1122 f2fs_wait_on_page_writeback(dn->node_page, NODE, true, true); in f2fs_set_data_blkaddr() 1124 if (set_page_dirty(dn->node_page)) in f2fs_set_data_blkaddr() 1152 f2fs_wait_on_page_writeback(dn->node_page, NODE, true, true); in f2fs_reserve_new_blocks() 1163 if (set_page_dirty(dn->node_page)) in f2fs_reserve_new_blocks() 1580 end_offset = ADDRS_PER_PAGE(dn.node_page, inode); in f2fs_map_blocks() 2238 blkaddr = data_blkaddr(dn.inode, dn.node_page, in f2fs_read_multi_pages() 2268 blkaddr = data_blkaddr(dn.inode, dn.node_page, in f2fs_read_multi_pages()
|
D | compress.c | 803 dn.node_page, dn.ofs_in_node + i); in __f2fs_cluster_blocks() 1090 if (data_blkaddr(dn.inode, dn.node_page, in f2fs_write_compressed_pages()
|
D | extent_cache.c | 801 fofs = f2fs_start_bidx_of_node(ofs_of_node(dn->node_page), dn->inode) + in f2fs_update_extent_cache()
|