mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-22 23:13:01 +02:00
f2fs: Pass a folio to inline_xattr_addr()
All callers now have a folio, so pass it in. 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
39b53c0b99
commit
e0691a051f
|
@ -3348,9 +3348,9 @@ static inline unsigned int addrs_per_page(struct inode *inode,
|
||||||
return addrs;
|
return addrs;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void *inline_xattr_addr(struct inode *inode, struct page *page)
|
static inline void *inline_xattr_addr(struct inode *inode, struct folio *folio)
|
||||||
{
|
{
|
||||||
struct f2fs_inode *ri = F2FS_INODE(page);
|
struct f2fs_inode *ri = F2FS_INODE(&folio->page);
|
||||||
|
|
||||||
return (void *)&(ri->i_addr[DEF_ADDRS_PER_INODE -
|
return (void *)&(ri->i_addr[DEF_ADDRS_PER_INODE -
|
||||||
get_inline_xattr_addrs(inode)]);
|
get_inline_xattr_addrs(inode)]);
|
||||||
|
|
|
@ -2736,8 +2736,8 @@ int f2fs_recover_inline_xattr(struct inode *inode, struct folio *folio)
|
||||||
goto update_inode;
|
goto update_inode;
|
||||||
}
|
}
|
||||||
|
|
||||||
dst_addr = inline_xattr_addr(inode, &ifolio->page);
|
dst_addr = inline_xattr_addr(inode, ifolio);
|
||||||
src_addr = inline_xattr_addr(inode, &folio->page);
|
src_addr = inline_xattr_addr(inode, folio);
|
||||||
inline_size = inline_xattr_size(inode);
|
inline_size = inline_xattr_size(inode);
|
||||||
|
|
||||||
f2fs_folio_wait_writeback(ifolio, NODE, true, true);
|
f2fs_folio_wait_writeback(ifolio, NODE, true, true);
|
||||||
|
|
|
@ -280,13 +280,13 @@ static int read_inline_xattr(struct inode *inode, struct folio *ifolio,
|
||||||
void *inline_addr;
|
void *inline_addr;
|
||||||
|
|
||||||
if (ifolio) {
|
if (ifolio) {
|
||||||
inline_addr = inline_xattr_addr(inode, &ifolio->page);
|
inline_addr = inline_xattr_addr(inode, ifolio);
|
||||||
} else {
|
} else {
|
||||||
folio = f2fs_get_inode_folio(sbi, inode->i_ino);
|
folio = f2fs_get_inode_folio(sbi, inode->i_ino);
|
||||||
if (IS_ERR(folio))
|
if (IS_ERR(folio))
|
||||||
return PTR_ERR(folio);
|
return PTR_ERR(folio);
|
||||||
|
|
||||||
inline_addr = inline_xattr_addr(inode, &folio->page);
|
inline_addr = inline_xattr_addr(inode, folio);
|
||||||
}
|
}
|
||||||
memcpy(txattr_addr, inline_addr, inline_size);
|
memcpy(txattr_addr, inline_addr, inline_size);
|
||||||
f2fs_folio_put(folio, true);
|
f2fs_folio_put(folio, true);
|
||||||
|
@ -447,14 +447,14 @@ static inline int write_all_xattrs(struct inode *inode, __u32 hsize,
|
||||||
/* write to inline xattr */
|
/* write to inline xattr */
|
||||||
if (inline_size) {
|
if (inline_size) {
|
||||||
if (ifolio) {
|
if (ifolio) {
|
||||||
inline_addr = inline_xattr_addr(inode, &ifolio->page);
|
inline_addr = inline_xattr_addr(inode, ifolio);
|
||||||
} else {
|
} else {
|
||||||
in_folio = f2fs_get_inode_folio(sbi, inode->i_ino);
|
in_folio = f2fs_get_inode_folio(sbi, inode->i_ino);
|
||||||
if (IS_ERR(in_folio)) {
|
if (IS_ERR(in_folio)) {
|
||||||
f2fs_alloc_nid_failed(sbi, new_nid);
|
f2fs_alloc_nid_failed(sbi, new_nid);
|
||||||
return PTR_ERR(in_folio);
|
return PTR_ERR(in_folio);
|
||||||
}
|
}
|
||||||
inline_addr = inline_xattr_addr(inode, &in_folio->page);
|
inline_addr = inline_xattr_addr(inode, in_folio);
|
||||||
}
|
}
|
||||||
|
|
||||||
f2fs_folio_wait_writeback(ifolio ? ifolio : in_folio,
|
f2fs_folio_wait_writeback(ifolio ? ifolio : in_folio,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user