diff options
author | Chengguang Xu <cgxu519@gmx.com> | 2018-12-10 00:22:38 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2018-12-10 00:22:38 -0500 |
commit | 0a1e8258a4fecd5aad2815b43bbe0ff014de1d8a (patch) | |
tree | 58af054e978b15445f40c660864adbd56502b734 /fs/ext4 | |
parent | e647e29196b7f802f8242c39ecb7cc937f5ef217 (diff) | |
download | linux-stable-0a1e8258a4fecd5aad2815b43bbe0ff014de1d8a.tar.gz linux-stable-0a1e8258a4fecd5aad2815b43bbe0ff014de1d8a.tar.bz2 linux-stable-0a1e8258a4fecd5aad2815b43bbe0ff014de1d8a.zip |
ext4: compare old and new mode before setting update_mode flag
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@gmx.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'fs/ext4')
-rw-r--r-- | fs/ext4/acl.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ext4/acl.c b/fs/ext4/acl.c index c1d570ee1d9f..8c7bbf3e566d 100644 --- a/fs/ext4/acl.c +++ b/fs/ext4/acl.c @@ -248,7 +248,8 @@ retry: error = posix_acl_update_mode(inode, &mode, &acl); if (error) goto out_stop; - update_mode = 1; + if (mode != inode->i_mode) + update_mode = 1; } error = __ext4_set_acl(handle, inode, type, acl, 0 /* xattr_flags */); |