summaryrefslogtreecommitdiffstats
path: root/fs/jfs
diff options
context:
space:
mode:
authorChengguang Xu <cgxu519@gmx.com>2018-11-24 17:40:44 +0800
committerDave Kleikamp <dave.kleikamp@oracle.com>2019-01-10 10:05:41 -0600
commit7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818 (patch)
treebf6e68fcb4a2298396b6cf69c6b0ecb788551bb4 /fs/jfs
parent3a9a12fbed5fea3f062f98d012d4284fc5fdc5bb (diff)
downloadlinux-7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818.tar.gz
linux-7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818.tar.bz2
linux-7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818.zip
jfs: 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: Dave Kleikamp <dave.kleikamp@oracle.com>
Diffstat (limited to 'fs/jfs')
-rw-r--r--fs/jfs/acl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/jfs/acl.c b/fs/jfs/acl.c
index 8c06a6ea862d..ebb299003a5b 100644
--- a/fs/jfs/acl.c
+++ b/fs/jfs/acl.c
@@ -117,7 +117,8 @@ int jfs_set_acl(struct inode *inode, struct posix_acl *acl, int type)
rc = posix_acl_update_mode(inode, &mode, &acl);
if (rc)
goto end_tx;
- update_mode = 1;
+ if (mode != inode->i_mode)
+ update_mode = 1;
}
rc = __jfs_set_acl(tid, inode, type, acl);
if (!rc) {