ovl: use ovl_do_getxattr() for private xattr
authorMiklos Szeredi <mszeredi@redhat.com>
Wed, 2 Sep 2020 08:58:48 +0000 (10:58 +0200)
committerMiklos Szeredi <mszeredi@redhat.com>
Wed, 2 Sep 2020 08:58:48 +0000 (10:58 +0200)
Use the convention of calling ovl_do_foo() for operations which are overlay
specific.

This patch is a no-op, and will have significance for supporting
"user.overlay." xattr namespace.

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/overlayfs/inode.c
fs/overlayfs/namei.c
fs/overlayfs/overlayfs.h
fs/overlayfs/util.c

index 8be6cd2..3297a5d 100644 (file)
@@ -748,7 +748,8 @@ unsigned int ovl_get_nlink(struct dentry *lowerdentry,
        if (!lowerdentry || !upperdentry || d_inode(lowerdentry)->i_nlink == 1)
                return fallback;
 
-       err = vfs_getxattr(upperdentry, OVL_XATTR_NLINK, &buf, sizeof(buf) - 1);
+       err = ovl_do_getxattr(upperdentry, OVL_XATTR_NLINK,
+                             &buf, sizeof(buf) - 1);
        if (err < 0)
                goto fail;
 
index f7d4358..7b5ee84 100644 (file)
@@ -109,7 +109,7 @@ static struct ovl_fh *ovl_get_fh(struct dentry *dentry, const char *name)
        int res, err;
        struct ovl_fh *fh = NULL;
 
-       res = vfs_getxattr(dentry, name, NULL, 0);
+       res = ovl_do_getxattr(dentry, name, NULL, 0);
        if (res < 0) {
                if (res == -ENODATA || res == -EOPNOTSUPP)
                        return NULL;
@@ -123,7 +123,7 @@ static struct ovl_fh *ovl_get_fh(struct dentry *dentry, const char *name)
        if (!fh)
                return ERR_PTR(-ENOMEM);
 
-       res = vfs_getxattr(dentry, name, fh->buf, res);
+       res = ovl_do_getxattr(dentry, name, fh->buf, res);
        if (res < 0)
                goto fail;
 
index ebc03e0..a5a7c19 100644 (file)
@@ -170,6 +170,12 @@ static inline int ovl_do_symlink(struct inode *dir, struct dentry *dentry,
        return err;
 }
 
+static inline ssize_t ovl_do_getxattr(struct dentry *dentry, const char *name,
+                                     void *value, size_t size)
+{
+       return vfs_getxattr(dentry, name, value, size);
+}
+
 static inline int ovl_do_setxattr(struct dentry *dentry, const char *name,
                                  const void *value, size_t size, int flags)
 {
index 4cc1366..d2a7765 100644 (file)
@@ -548,7 +548,7 @@ bool ovl_check_origin_xattr(struct dentry *dentry)
 {
        int res;
 
-       res = vfs_getxattr(dentry, OVL_XATTR_ORIGIN, NULL, 0);
+       res = ovl_do_getxattr(dentry, OVL_XATTR_ORIGIN, NULL, 0);
 
        /* Zero size value means "copied up but origin unknown" */
        if (res >= 0)
@@ -565,7 +565,7 @@ bool ovl_check_dir_xattr(struct dentry *dentry, const char *name)
        if (!d_is_dir(dentry))
                return false;
 
-       res = vfs_getxattr(dentry, name, &val, 1);
+       res = ovl_do_getxattr(dentry, name, &val, 1);
        if (res == 1 && val == 'y')
                return true;
 
@@ -853,7 +853,7 @@ int ovl_check_metacopy_xattr(struct dentry *dentry)
        if (!S_ISREG(d_inode(dentry)->i_mode))
                return 0;
 
-       res = vfs_getxattr(dentry, OVL_XATTR_METACOPY, NULL, 0);
+       res = ovl_do_getxattr(dentry, OVL_XATTR_METACOPY, NULL, 0);
        if (res < 0) {
                if (res == -ENODATA || res == -EOPNOTSUPP)
                        return 0;
@@ -887,7 +887,7 @@ char *ovl_get_redirect_xattr(struct dentry *dentry, int padding)
        int res;
        char *s, *next, *buf = NULL;
 
-       res = vfs_getxattr(dentry, OVL_XATTR_REDIRECT, NULL, 0);
+       res = ovl_do_getxattr(dentry, OVL_XATTR_REDIRECT, NULL, 0);
        if (res == -ENODATA || res == -EOPNOTSUPP)
                return NULL;
        if (res < 0)
@@ -899,7 +899,7 @@ char *ovl_get_redirect_xattr(struct dentry *dentry, int padding)
        if (!buf)
                return ERR_PTR(-ENOMEM);
 
-       res = vfs_getxattr(dentry, OVL_XATTR_REDIRECT, buf, res);
+       res = ovl_do_getxattr(dentry, OVL_XATTR_REDIRECT, buf, res);
        if (res < 0)
                goto fail;
        if (res == 0)