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>
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);
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)) {
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)) {
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))
};
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;
}
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)
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);
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;
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);
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);