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> --- 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