diff options
Diffstat (limited to 'fs/ocfs2/acl.c')
-rw-r--r-- | fs/ocfs2/acl.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/fs/ocfs2/acl.c b/fs/ocfs2/acl.c index 762e5a3aecd3..c7641f656494 100644 --- a/fs/ocfs2/acl.c +++ b/fs/ocfs2/acl.c | |||
@@ -241,13 +241,11 @@ int ocfs2_set_acl(handle_t *handle, | |||
241 | case ACL_TYPE_ACCESS: | 241 | case ACL_TYPE_ACCESS: |
242 | name_index = OCFS2_XATTR_INDEX_POSIX_ACL_ACCESS; | 242 | name_index = OCFS2_XATTR_INDEX_POSIX_ACL_ACCESS; |
243 | if (acl) { | 243 | if (acl) { |
244 | umode_t mode = inode->i_mode; | 244 | umode_t mode; |
245 | ret = posix_acl_equiv_mode(acl, &mode); | ||
246 | if (ret < 0) | ||
247 | return ret; | ||
248 | 245 | ||
249 | if (ret == 0) | 246 | ret = posix_acl_update_mode(inode, &mode, &acl); |
250 | acl = NULL; | 247 | if (ret) |
248 | return ret; | ||
251 | 249 | ||
252 | ret = ocfs2_acl_set_mode(inode, di_bh, | 250 | ret = ocfs2_acl_set_mode(inode, di_bh, |
253 | handle, mode); | 251 | handle, mode); |