The one caller already has folios, so pass them in, and further pass
them to __f2fs_set_acl() and f2fs_acl_create().  There should be
no change to the generated code for this commit.

Signed-off-by: Matthew Wilcox (Oracle) <wi...@infradead.org>
---
 fs/f2fs/acl.c | 27 +++++++++++++--------------
 fs/f2fs/acl.h | 10 +++++-----
 fs/f2fs/dir.c |  2 +-
 3 files changed, 19 insertions(+), 20 deletions(-)

diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
index 1fbc0607363b..1ec6125cadc5 100644
--- a/fs/f2fs/acl.c
+++ b/fs/f2fs/acl.c
@@ -227,7 +227,7 @@ static int f2fs_acl_update_mode(struct mnt_idmap *idmap,
 
 static int __f2fs_set_acl(struct mnt_idmap *idmap,
                        struct inode *inode, int type,
-                       struct posix_acl *acl, struct page *ipage)
+                       struct posix_acl *acl, struct folio *ifolio)
 {
        int name_index;
        void *value = NULL;
@@ -238,9 +238,8 @@ static int __f2fs_set_acl(struct mnt_idmap *idmap,
        switch (type) {
        case ACL_TYPE_ACCESS:
                name_index = F2FS_XATTR_INDEX_POSIX_ACL_ACCESS;
-               if (acl && !ipage) {
-                       error = f2fs_acl_update_mode(idmap, inode,
-                                                               &mode, &acl);
+               if (acl && !ifolio) {
+                       error = f2fs_acl_update_mode(idmap, inode, &mode, &acl);
                        if (error)
                                return error;
                        set_acl_inode(inode, mode);
@@ -265,7 +264,7 @@ static int __f2fs_set_acl(struct mnt_idmap *idmap,
                }
        }
 
-       error = f2fs_setxattr(inode, name_index, "", value, size, ipage, 0);
+       error = f2fs_setxattr(inode, name_index, "", value, size, 
&ifolio->page, 0);
 
        kfree(value);
        if (!error)
@@ -360,7 +359,7 @@ static int f2fs_acl_create_masq(struct posix_acl *acl, 
umode_t *mode_p)
 
 static int f2fs_acl_create(struct inode *dir, umode_t *mode,
                struct posix_acl **default_acl, struct posix_acl **acl,
-               struct page *dpage)
+               struct folio *dfolio)
 {
        struct posix_acl *p;
        struct posix_acl *clone;
@@ -372,7 +371,7 @@ static int f2fs_acl_create(struct inode *dir, umode_t *mode,
        if (S_ISLNK(*mode) || !IS_POSIXACL(dir))
                return 0;
 
-       p = __f2fs_get_acl(dir, ACL_TYPE_DEFAULT, dpage);
+       p = __f2fs_get_acl(dir, ACL_TYPE_DEFAULT, &dfolio->page);
        if (!p || p == ERR_PTR(-EOPNOTSUPP)) {
                *mode &= ~current_umask();
                return 0;
@@ -409,29 +408,29 @@ static int f2fs_acl_create(struct inode *dir, umode_t 
*mode,
        return ret;
 }
 
-int f2fs_init_acl(struct inode *inode, struct inode *dir, struct page *ipage,
-                                                       struct page *dpage)
+int f2fs_init_acl(struct inode *inode, struct inode *dir, struct folio *ifolio,
+                                                       struct folio *dfolio)
 {
        struct posix_acl *default_acl = NULL, *acl = NULL;
        int error;
 
-       error = f2fs_acl_create(dir, &inode->i_mode, &default_acl, &acl, dpage);
+       error = f2fs_acl_create(dir, &inode->i_mode, &default_acl, &acl, 
dfolio);
        if (error)
                return error;
 
        f2fs_mark_inode_dirty_sync(inode, true);
 
        if (default_acl) {
-               error = __f2fs_set_acl(NULL, inode, ACL_TYPE_DEFAULT, 
default_acl,
-                                      ipage);
+               error = __f2fs_set_acl(NULL, inode, ACL_TYPE_DEFAULT,
+                               default_acl, ifolio);
                posix_acl_release(default_acl);
        } else {
                inode->i_default_acl = NULL;
        }
        if (acl) {
                if (!error)
-                       error = __f2fs_set_acl(NULL, inode, ACL_TYPE_ACCESS, 
acl,
-                                              ipage);
+                       error = __f2fs_set_acl(NULL, inode, ACL_TYPE_ACCESS,
+                                       acl, ifolio);
                posix_acl_release(acl);
        } else {
                inode->i_acl = NULL;
diff --git a/fs/f2fs/acl.h b/fs/f2fs/acl.h
index 94ebfbfbdc6f..20e87e63c089 100644
--- a/fs/f2fs/acl.h
+++ b/fs/f2fs/acl.h
@@ -33,17 +33,17 @@ struct f2fs_acl_header {
 
 #ifdef CONFIG_F2FS_FS_POSIX_ACL
 
-extern struct posix_acl *f2fs_get_acl(struct inode *, int, bool);
-extern int f2fs_set_acl(struct mnt_idmap *, struct dentry *,
+struct posix_acl *f2fs_get_acl(struct inode *, int, bool);
+int f2fs_set_acl(struct mnt_idmap *, struct dentry *,
                        struct posix_acl *, int);
-extern int f2fs_init_acl(struct inode *, struct inode *, struct page *,
-                                                       struct page *);
+int f2fs_init_acl(struct inode *, struct inode *, struct folio *ifolio,
+               struct folio *dfolio);
 #else
 #define f2fs_get_acl   NULL
 #define f2fs_set_acl   NULL
 
 static inline int f2fs_init_acl(struct inode *inode, struct inode *dir,
-                               struct page *ipage, struct page *dpage)
+                               struct folio *ifolio, struct folio *dfolio)
 {
        return 0;
 }
diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c
index d31cd86305eb..bd404a5de4a1 100644
--- a/fs/f2fs/dir.c
+++ b/fs/f2fs/dir.c
@@ -536,7 +536,7 @@ struct page *f2fs_init_inode_metadata(struct inode *inode, 
struct inode *dir,
                        folio_put(folio);
                }
 
-               err = f2fs_init_acl(inode, dir, &folio->page, &dfolio->page);
+               err = f2fs_init_acl(inode, dir, folio, dfolio);
                if (err)
                        goto put_error;
 
-- 
2.47.2



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to