Re: [PATCH] ext2: compare old and new mode before setting update_mode flag

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/19/18 6:04 PM, Jan Kara wrote:
On Sat 17-11-18 17:01:00, Chengguang Xu wrote:
If new mode is the same as old mode we don't have to reset
inode mode in the rest of the code, so compare old and new
mode before setting update_mode flag.

Signed-off-by: Chengguang Xu <cgxu519@xxxxxxx>
I don't think this is quite correct. E.g. I would think that i_ctime should
be updated even if the effective mode resulting from acl did not change.

I think  __ext2_set_acl() will probably update i_ctime in this case, am I missing something?

Thanks,


---
  fs/ext2/acl.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/ext2/acl.c b/fs/ext2/acl.c
index cf4c77f8dd08..f4dd728393c8 100644
--- a/fs/ext2/acl.c
+++ b/fs/ext2/acl.c
@@ -226,7 +226,8 @@ ext2_set_acl(struct inode *inode, struct posix_acl *acl, int type)
  		error = posix_acl_update_mode(inode, &mode, &acl);
  		if (error)
  			return error;
-		update_mode = 1;
+		if (mode != inode->i_mode)
+			update_mode = 1;
  	}
  	error = __ext2_set_acl(inode, acl, type);
  	if (!error && update_mode) {
--
2.17.2





[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux