ocfs2: do not overwrite error codes in ocfs2_init_acl
PATCH v2 1/1 ocfs2: do not overwrite error codes in ocfs2_init_acl
Setting the acl while creating a new inode depends on the error codes of posix_acl_create_masq. This patch fix a issue of overwriting the error codes of it.
Reported-by Pawel Zawora <[email protected]>
Cc <[email protected]> [ .33, .34 ]
Signed-off-by Tiger Yang <[email protected]>
--- fs/ocfs2/acl.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-)
fs/ocfs2/acl.c +7 -2
@@ -344,7 +344,7 @@ int ocfs2_init_acl(handle_t *handle, {struct ocfs2_super *osb =OCFS2_SB (inode->i_sb);struct posix_acl *acl =NULL ; -int ret =0 ; +int ret =0 , ret2;mode_t mode;if (!S_ISLNK (inode->i_mode)) {
@@ -381,7 +381,12 @@ int ocfs2_init_acl(handle_t *handle, mode = inode->i_mode; ret =posix_acl_create_masq (clone, &mode);if (ret >=0 ) { - ret =ocfs2_acl_set_mode (inode, di_bh, handle, mode); + ret2 =ocfs2_acl_set_mode (inode, di_bh, handle, mode); +if (ret2) { +mlog_errno (ret2); + ret = ret2; + goto cleanup; + }if (ret >0 ) { ret = ocfs2_set_acl(handle, inode, di_bh, ACL_TYPE_ACCESS,
Signature · 1 line
1.5.2.3