summaryrefslogtreecommitdiffstats
path: root/fs/jfs
diff options
context:
space:
mode:
authorChengguang Xu2018-11-24 10:40:44 +0100
committerDave Kleikamp2019-01-10 17:05:41 +0100
commit7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818 (patch)
treebf6e68fcb4a2298396b6cf69c6b0ecb788551bb4 /fs/jfs
parentjfs: remove incorrect comment in jfs_superblock (diff)
downloadkernel-qcow2-linux-7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818.tar.gz
kernel-qcow2-linux-7ca5e8f089c2cbe79ee220b5acb4bc6cf4422818.tar.xz
kernel-qcow2-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) {