[XFS] remove spurious VN_HOLD/VN_RELE calls from xfs_acl.c
All the ACL routines are called from inode operations which are guaranteed to have a referenced inode by the VFS, so there's no need for the ACL code to grab another temporary one. SGI-PV: 981498 SGI-Modid: xfs-linux-melb:xfs-kern:31763a Signed-off-by: Christoph Hellwig <hch@infradead.org> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
This commit is contained in:
committed by
Lachlan McIlroy
parent
863890cd90
commit
604323ca76
@@ -217,7 +217,6 @@ xfs_acl_vget(
|
|||||||
posix_acl_xattr_header *ext_acl = acl;
|
posix_acl_xattr_header *ext_acl = acl;
|
||||||
int flags = 0;
|
int flags = 0;
|
||||||
|
|
||||||
VN_HOLD(vp);
|
|
||||||
if(size) {
|
if(size) {
|
||||||
if (!(_ACL_ALLOC(xfs_acl))) {
|
if (!(_ACL_ALLOC(xfs_acl))) {
|
||||||
error = ENOMEM;
|
error = ENOMEM;
|
||||||
@@ -243,7 +242,6 @@ xfs_acl_vget(
|
|||||||
error = -posix_acl_xfs_to_xattr(xfs_acl, ext_acl, size);
|
error = -posix_acl_xfs_to_xattr(xfs_acl, ext_acl, size);
|
||||||
}
|
}
|
||||||
out:
|
out:
|
||||||
VN_RELE(vp);
|
|
||||||
if(xfs_acl)
|
if(xfs_acl)
|
||||||
_ACL_FREE(xfs_acl);
|
_ACL_FREE(xfs_acl);
|
||||||
return -error;
|
return -error;
|
||||||
@@ -256,7 +254,6 @@ xfs_acl_vremove(
|
|||||||
{
|
{
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
VN_HOLD(vp);
|
|
||||||
error = xfs_acl_allow_set(vp, kind);
|
error = xfs_acl_allow_set(vp, kind);
|
||||||
if (!error) {
|
if (!error) {
|
||||||
error = xfs_attr_remove(XFS_I(vp),
|
error = xfs_attr_remove(XFS_I(vp),
|
||||||
@@ -266,7 +263,6 @@ xfs_acl_vremove(
|
|||||||
if (error == ENOATTR)
|
if (error == ENOATTR)
|
||||||
error = 0; /* 'scool */
|
error = 0; /* 'scool */
|
||||||
}
|
}
|
||||||
VN_RELE(vp);
|
|
||||||
return -error;
|
return -error;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -298,7 +294,6 @@ xfs_acl_vset(
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
VN_HOLD(vp);
|
|
||||||
error = xfs_acl_allow_set(vp, kind);
|
error = xfs_acl_allow_set(vp, kind);
|
||||||
|
|
||||||
/* Incoming ACL exists, set file mode based on its value */
|
/* Incoming ACL exists, set file mode based on its value */
|
||||||
@@ -321,7 +316,6 @@ xfs_acl_vset(
|
|||||||
}
|
}
|
||||||
|
|
||||||
out:
|
out:
|
||||||
VN_RELE(vp);
|
|
||||||
_ACL_FREE(xfs_acl);
|
_ACL_FREE(xfs_acl);
|
||||||
return -error;
|
return -error;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user