Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1685337 > unrolled thread

[PATCH] f2fs: Don't clear SGID when inheriting ACLs

Started byJaegeuk Kim <jaegeuk@kernel.org>
First post2017-07-11 23:00 +0200
Last post2017-07-13 17:20 +0200
Articles 4 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] f2fs: Don't clear SGID when inheriting ACLs Jaegeuk Kim <jaegeuk@kernel.org> - 2017-07-11 23:00 +0200
    Re: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs Jaegeuk Kim <jaegeuk@kernel.org> - 2017-07-12 01:40 +0200
      Re: [f2fs-dev] [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs Chao Yu <chao@kernel.org> - 2017-07-13 06:10 +0200
      Re: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs Jan Kara <jack@suse.cz> - 2017-07-13 17:20 +0200

#1685337 — [PATCH] f2fs: Don't clear SGID when inheriting ACLs

FromJaegeuk Kim <jaegeuk@kernel.org>
Date2017-07-11 23:00 +0200
Subject[PATCH] f2fs: Don't clear SGID when inheriting ACLs
Message-ID<u2aqe-77a-23@gated-at.bofh.it>
This patch copies commit b7f8a09f80:
  "btrfs: Don't clear SGID when inheriting ACLs" written by Jan.

Fixes: 073931017b49d9458aa351605b43a7e34598caef
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
---
 fs/f2fs/acl.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
index a140c5e3dc54..da77352c5ad3 100644
--- a/fs/f2fs/acl.c
+++ b/fs/f2fs/acl.c
@@ -211,12 +211,8 @@ static int __f2fs_set_acl(struct inode *inode, int type,
 	switch (type) {
 	case ACL_TYPE_ACCESS:
 		name_index = F2FS_XATTR_INDEX_POSIX_ACL_ACCESS;
-		if (acl) {
-			error = posix_acl_update_mode(inode, &inode->i_mode, &acl);
-			if (error)
-				return error;
+		if (acl)
 			set_acl_inode(inode, inode->i_mode);
-		}
 		break;
 
 	case ACL_TYPE_DEFAULT:
@@ -249,6 +245,13 @@ static int __f2fs_set_acl(struct inode *inode, int type,
 
 int f2fs_set_acl(struct inode *inode, struct posix_acl *acl, int type)
 {
+	int ret;
+
+	if (type == ACL_TYPE_ACCESS && acl) {
+		ret = posix_acl_update_mode(inode, &inode->i_mode, &acl);
+		if (ret)
+			return ret;
+	}
 	return __f2fs_set_acl(inode, type, acl, NULL);
 }
 
-- 
2.13.0.rc1.294.g07d810a77f-goog

[toc] | [next] | [standalone]


#1685396 — Re: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs

FromJaegeuk Kim <jaegeuk@kernel.org>
Date2017-07-12 01:40 +0200
SubjectRe: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs
Message-ID<u2cV4-jo-13@gated-at.bofh.it>
In reply to#1685337
This patch copies commit b7f8a09f80:
"btrfs: Don't clear SGID when inheriting ACLs" written by Jan.

Fixes: 073931017b49d9458aa351605b43a7e34598caef
CC: stable@vger.kernel.org
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
---

Change log from v1:
 - fix for simple change

 fs/f2fs/acl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
index a140c5e3dc54..b4b8438c42ef 100644
--- a/fs/f2fs/acl.c
+++ b/fs/f2fs/acl.c
@@ -211,7 +211,7 @@ static int __f2fs_set_acl(struct inode *inode, int type,
 	switch (type) {
 	case ACL_TYPE_ACCESS:
 		name_index = F2FS_XATTR_INDEX_POSIX_ACL_ACCESS;
-		if (acl) {
+		if (acl && !ipage) {
 			error = posix_acl_update_mode(inode, &inode->i_mode, &acl);
 			if (error)
 				return error;
-- 
2.13.0.rc1.294.g07d810a77f-goog

[toc] | [prev] | [next] | [standalone]


#1686231 — Re: [f2fs-dev] [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs

FromChao Yu <chao@kernel.org>
Date2017-07-13 06:10 +0200
SubjectRe: [f2fs-dev] [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs
Message-ID<u2DBU-G9-19@gated-at.bofh.it>
In reply to#1685396
On 2017/7/12 7:31, Jaegeuk Kim wrote:
> This patch copies commit b7f8a09f80:
> "btrfs: Don't clear SGID when inheriting ACLs" written by Jan.
> 
> Fixes: 073931017b49d9458aa351605b43a7e34598caef
> CC: stable@vger.kernel.org
> Signed-off-by: Jan Kara <jack@suse.cz>
> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>

Reviewed-by: Chao Yu <yuchao0@huawei.com>

Thanks,

> ---
> 
> Change log from v1:
>  - fix for simple change
> 
>  fs/f2fs/acl.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
> index a140c5e3dc54..b4b8438c42ef 100644
> --- a/fs/f2fs/acl.c
> +++ b/fs/f2fs/acl.c
> @@ -211,7 +211,7 @@ static int __f2fs_set_acl(struct inode *inode, int type,
>  	switch (type) {
>  	case ACL_TYPE_ACCESS:
>  		name_index = F2FS_XATTR_INDEX_POSIX_ACL_ACCESS;
> -		if (acl) {
> +		if (acl && !ipage) {
>  			error = posix_acl_update_mode(inode, &inode->i_mode, &acl);
>  			if (error)
>  				return error;
> 

[toc] | [prev] | [next] | [standalone]


#1686612 — Re: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs

FromJan Kara <jack@suse.cz>
Date2017-07-13 17:20 +0200
SubjectRe: [PATCH v2] f2fs: Don't clear SGID when inheriting ACLs
Message-ID<u2O4h-7hE-3@gated-at.bofh.it>
In reply to#1685396
On Tue 11-07-17 16:31:24, Jaegeuk Kim wrote:
> This patch copies commit b7f8a09f80:
> "btrfs: Don't clear SGID when inheriting ACLs" written by Jan.
> 
> Fixes: 073931017b49d9458aa351605b43a7e34598caef
> CC: stable@vger.kernel.org
> Signed-off-by: Jan Kara <jack@suse.cz>
> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>

Ah, somehow I've missed f2fs when going through filesystems that needed
fixing up. Thanks for catching that. The patch looks good to me. It would
just look a bit cleaner to me to move posix_acl_update_mode() call out of
__f2fs_set_acl() into f2fs_set_acl() similarly as we do in other
filesystems. But whatever, you are the maintainer ;) Feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza
> ---
> 
> Change log from v1:
>  - fix for simple change
> 
>  fs/f2fs/acl.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/f2fs/acl.c b/fs/f2fs/acl.c
> index a140c5e3dc54..b4b8438c42ef 100644
> --- a/fs/f2fs/acl.c
> +++ b/fs/f2fs/acl.c
> @@ -211,7 +211,7 @@ static int __f2fs_set_acl(struct inode *inode, int type,
>  	switch (type) {
>  	case ACL_TYPE_ACCESS:
>  		name_index = F2FS_XATTR_INDEX_POSIX_ACL_ACCESS;
> -		if (acl) {
> +		if (acl && !ipage) {
>  			error = posix_acl_update_mode(inode, &inode->i_mode, &acl);
>  			if (error)
>  				return error;
> -- 
> 2.13.0.rc1.294.g07d810a77f-goog
> 
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web