These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / drivers / staging / lustre / lustre / llite / xattr.c
index e0fcbe1..4b7eb33 100644 (file)
@@ -111,7 +111,6 @@ int ll_setxattr_common(struct inode *inode, const char *name,
        struct ll_sb_info *sbi = ll_i2sbi(inode);
        struct ptlrpc_request *req = NULL;
        int xattr_type, rc;
-       struct obd_capa *oc;
 #ifdef CONFIG_FS_POSIX_ACL
        struct rmtacl_ctl_entry *rce = NULL;
        posix_acl_xattr_header *new_value = NULL;
@@ -175,11 +174,12 @@ int ll_setxattr_common(struct inode *inode, const char *name,
                        }
                        ee_free(ee);
                } else if (rce->rce_ops == RMT_RSETFACL) {
-                       size = lustre_posix_acl_xattr_filter(
+                       rc = lustre_posix_acl_xattr_filter(
                                                (posix_acl_xattr_header *)value,
                                                size, &new_value);
-                       if (unlikely(size < 0))
-                               return size;
+                       if (unlikely(rc < 0))
+                               return rc;
+                       size = rc;
 
                        pv = (const char *)new_value;
                } else
@@ -188,11 +188,9 @@ int ll_setxattr_common(struct inode *inode, const char *name,
                valid |= rce_ops2valid(rce->rce_ops);
        }
 #endif
-               oc = ll_mdscapa_get(inode);
-               rc = md_setxattr(sbi->ll_md_exp, ll_inode2fid(inode), oc,
-                               valid, name, pv, size, 0, flags,
-                               ll_i2suppgid(inode), &req);
-               capa_put(oc);
+       rc = md_setxattr(sbi->ll_md_exp, ll_inode2fid(inode),
+                        valid, name, pv, size, 0, flags,
+                        ll_i2suppgid(inode), &req);
 #ifdef CONFIG_FS_POSIX_ACL
        if (new_value != NULL)
                lustre_posix_acl_xattr_free(new_value, size);
@@ -289,7 +287,6 @@ int ll_getxattr_common(struct inode *inode, const char *name,
        struct mdt_body *body;
        int xattr_type, rc;
        void *xdata;
-       struct obd_capa *oc;
        struct rmtacl_ctl_entry *rce = NULL;
        struct ll_inode_info *lli = ll_i2info(inode);
 
@@ -380,11 +377,9 @@ do_getxattr:
                }
        } else {
 getxattr_nocache:
-               oc = ll_mdscapa_get(inode);
-               rc = md_getxattr(sbi->ll_md_exp, ll_inode2fid(inode), oc,
+               rc = md_getxattr(sbi->ll_md_exp, ll_inode2fid(inode),
                                valid | (rce ? rce_ops2valid(rce->rce_ops) : 0),
                                name, NULL, 0, size, 0, &req);
-               capa_put(oc);
 
                if (rc < 0)
                        goto out_xattr;
@@ -524,7 +519,7 @@ ssize_t ll_getxattr(struct dentry *dentry, const char *name,
                        goto out;
                }
 
-               lump = (struct lov_user_md *)buffer;
+               lump = buffer;
                memcpy(lump, lmm, lmmsize);
                /* do not return layout gen for getxattr otherwise it would
                 * confuse tar --xattr by recognizing layout gen as stripe