diff options
Diffstat (limited to 'drivers/staging/lustre/lustre/llite/xattr.c')
-rw-r--r-- | drivers/staging/lustre/lustre/llite/xattr.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/drivers/staging/lustre/lustre/llite/xattr.c b/drivers/staging/lustre/lustre/llite/xattr.c index 362a87d0d0d3..4b7eb33f7d01 100644 --- a/drivers/staging/lustre/lustre/llite/xattr.c +++ b/drivers/staging/lustre/lustre/llite/xattr.c @@ -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, + rc = md_setxattr(sbi->ll_md_exp, ll_inode2fid(inode), valid, name, pv, size, 0, flags, ll_i2suppgid(inode), &req); - capa_put(oc); #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 |