From mboxrd@z Thu Jan 1 00:00:00 1970 From: Srinivas Eeda Date: Mon, 7 Dec 2015 17:07:24 -0800 Subject: [Ocfs2-devel] [PATCH] ocfs2: fix SGID not inherited issue In-Reply-To: <1449461346-21864-1-git-send-email-junxiao.bi@oracle.com> References: <1449461346-21864-1-git-send-email-junxiao.bi@oracle.com> Message-ID: <56662D4C.4020201@oracle.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ocfs2-devel@oss.oracle.com Thanks Junxiao! Acked-by: Srinivas Eeda On 12/06/2015 08:09 PM, Junxiao Bi wrote: > commit 8f1eb48758aa ("ocfs2: fix umask ignored issue") introduced an issue, > SGID of sub dir was not inherited from its parents dir. It is because SGID > is set into "inode->i_mode" in ocfs2_get_init_inode(), but is overwritten > by "mode" which don't have SGID set later. > > Fixes: 8f1eb48758aa ("ocfs2: fix umask ignored issue") > Signed-off-by: Junxiao Bi > Cc: > --- > fs/ocfs2/namei.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c > index a03f6f4..3123408 100644 > --- a/fs/ocfs2/namei.c > +++ b/fs/ocfs2/namei.c > @@ -367,13 +367,11 @@ static int ocfs2_mknod(struct inode *dir, > goto leave; > } > > - status = posix_acl_create(dir, &mode, &default_acl, &acl); > + status = posix_acl_create(dir, &inode->i_mode, &default_acl, &acl); > if (status) { > mlog_errno(status); > goto leave; > } > - /* update inode->i_mode after mask with "umask". */ > - inode->i_mode = mode; > > handle = ocfs2_start_trans(osb, ocfs2_mknod_credits(osb->sb, > S_ISDIR(mode),