mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 14:42:08 +02:00
f2fs: Pass folios to set_new_dnode()
Removes a lot of conversions of folios into pages. Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
a8a4ad25b5
commit
214235c224
|
|
@ -1359,7 +1359,7 @@ struct folio *f2fs_get_new_data_folio(struct inode *inode,
|
|||
return ERR_PTR(-ENOMEM);
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, inode, &ifolio->page, NULL, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, NULL, 0);
|
||||
err = f2fs_reserve_block(&dn, index);
|
||||
if (err) {
|
||||
f2fs_folio_put(folio, true);
|
||||
|
|
@ -3384,7 +3384,7 @@ static int prepare_write_begin(struct f2fs_sb_info *sbi,
|
|||
goto unlock_out;
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, inode, &ifolio->page, &ifolio->page, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, ifolio, 0);
|
||||
|
||||
if (f2fs_has_inline_data(inode)) {
|
||||
if (pos + len <= MAX_INLINE_DATA(inode)) {
|
||||
|
|
@ -3445,7 +3445,7 @@ static int __find_data_block(struct inode *inode, pgoff_t index,
|
|||
if (IS_ERR(ifolio))
|
||||
return PTR_ERR(ifolio);
|
||||
|
||||
set_new_dnode(&dn, inode, &ifolio->page, &ifolio->page, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, ifolio, 0);
|
||||
|
||||
if (!f2fs_lookup_read_extent_cache_block(inode, index,
|
||||
&dn.data_blkaddr)) {
|
||||
|
|
@ -3476,7 +3476,7 @@ static int __reserve_data_block(struct inode *inode, pgoff_t index,
|
|||
err = PTR_ERR(ifolio);
|
||||
goto unlock_out;
|
||||
}
|
||||
set_new_dnode(&dn, inode, &ifolio->page, &ifolio->page, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, ifolio, 0);
|
||||
|
||||
if (!f2fs_lookup_read_extent_cache_block(dn.inode, index,
|
||||
&dn.data_blkaddr))
|
||||
|
|
|
|||
|
|
@ -1013,12 +1013,12 @@ struct dnode_of_data {
|
|||
};
|
||||
|
||||
static inline void set_new_dnode(struct dnode_of_data *dn, struct inode *inode,
|
||||
struct page *ipage, struct page *npage, nid_t nid)
|
||||
struct folio *ifolio, struct folio *nfolio, nid_t nid)
|
||||
{
|
||||
memset(dn, 0, sizeof(*dn));
|
||||
dn->inode = inode;
|
||||
dn->inode_page = ipage;
|
||||
dn->node_page = npage;
|
||||
dn->inode_page = &ifolio->page;
|
||||
dn->node_page = &nfolio->page;
|
||||
dn->nid = nid;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -790,7 +790,7 @@ int f2fs_do_truncate_blocks(struct inode *inode, u64 from, bool lock)
|
|||
goto out;
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, inode, &ifolio->page, NULL, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, NULL, 0);
|
||||
err = f2fs_get_dnode_of_data(&dn, free_from, LOOKUP_NODE_RA);
|
||||
if (err) {
|
||||
if (err == -ENOENT)
|
||||
|
|
|
|||
|
|
@ -243,7 +243,7 @@ int f2fs_convert_inline_inode(struct inode *inode)
|
|||
goto out;
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, inode, &ifolio->page, &ifolio->page, 0);
|
||||
set_new_dnode(&dn, inode, ifolio, ifolio, 0);
|
||||
|
||||
if (f2fs_has_inline_data(inode))
|
||||
err = f2fs_convert_inline_page(&dn, &folio->page);
|
||||
|
|
@ -422,7 +422,7 @@ static int f2fs_move_inline_dirents(struct inode *dir, struct folio *ifolio,
|
|||
return PTR_ERR(folio);
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, dir, &ifolio->page, NULL, 0);
|
||||
set_new_dnode(&dn, dir, ifolio, NULL, 0);
|
||||
err = f2fs_reserve_block(&dn, 0);
|
||||
if (err)
|
||||
goto out;
|
||||
|
|
|
|||
|
|
@ -1156,7 +1156,7 @@ int f2fs_truncate_inode_blocks(struct inode *inode, pgoff_t from)
|
|||
return PTR_ERR(folio);
|
||||
}
|
||||
|
||||
set_new_dnode(&dn, inode, &folio->page, NULL, 0);
|
||||
set_new_dnode(&dn, inode, folio, NULL, 0);
|
||||
folio_unlock(folio);
|
||||
|
||||
ri = F2FS_INODE(&folio->page);
|
||||
|
|
@ -1252,7 +1252,7 @@ int f2fs_truncate_xattr_node(struct inode *inode)
|
|||
if (IS_ERR(nfolio))
|
||||
return PTR_ERR(nfolio);
|
||||
|
||||
set_new_dnode(&dn, inode, NULL, &nfolio->page, nid);
|
||||
set_new_dnode(&dn, inode, NULL, nfolio, nid);
|
||||
err = truncate_node(&dn);
|
||||
if (err) {
|
||||
f2fs_folio_put(nfolio, true);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user