[Ocfs2-devel] [PATCH] ocfs2: fix SGID not inherited issue

Srinivas Eeda srinivas.eeda at oracle.com
Mon Dec 7 17:07:24 PST 2015


Thanks Junxiao!

Acked-by: Srinivas Eeda <srinivas.eeda at oracle.com>

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 <junxiao.bi at oracle.com>
> Cc: <stable at vger.kernel.org>
> ---
>   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),




More information about the Ocfs2-devel mailing list