diff options
author | Deepa Dinamani <deepa.kernel@gmail.com> | 2019-11-30 06:30:25 +0100 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2019-12-02 22:15:35 +0100 |
commit | 69738cfdfa7032f45d9e7462d24490e61cf163dd (patch) | |
tree | da838cb9465e63a48fd7adf2f9ef0e799e7dcca4 /fs/cifs | |
parent | CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks (diff) | |
download | linux-69738cfdfa7032f45d9e7462d24490e61cf163dd.tar.xz linux-69738cfdfa7032f45d9e7462d24490e61cf163dd.zip |
fs: cifs: Fix atime update check vs mtime
According to the comment in the code and commit log, some apps
expect atime >= mtime; but the introduced code results in
atime==mtime. Fix the comparison to guard against atime<mtime.
Fixes: 9b9c5bea0b96 ("cifs: do not return atime less than mtime")
Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Cc: stfrench@microsoft.com
Cc: linux-cifs@vger.kernel.org
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/cifs')
-rw-r--r-- | fs/cifs/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index 8a76195e8a69..ca76a9287456 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c @@ -163,7 +163,7 @@ cifs_fattr_to_inode(struct inode *inode, struct cifs_fattr *fattr) spin_lock(&inode->i_lock); /* we do not want atime to be less than mtime, it broke some apps */ - if (timespec64_compare(&fattr->cf_atime, &fattr->cf_mtime)) + if (timespec64_compare(&fattr->cf_atime, &fattr->cf_mtime) < 0) inode->i_atime = fattr->cf_mtime; else inode->i_atime = fattr->cf_atime; |