smb3: do not error on fsync when readonly
authorSteve French <stfrench@microsoft.com>
Wed, 10 Nov 2021 07:47:48 +0000 (01:47 -0600)
committerSteve French <stfrench@microsoft.com>
Wed, 10 Nov 2021 22:28:27 +0000 (16:28 -0600)
commit71e6864eacbef0b2645ca043cdfbac272cb6cea3
tree9a62b86152ec698032bec5ab399a76ab323e5c2e
parentb6f2a0f89d7ed80382ec9cba8fc521129ae9baa1
smb3: do not error on fsync when readonly

Linux allows doing a flush/fsync on a file open for read-only,
but the protocol does not allow that.  If the file passed in
on the flush is read-only try to find a writeable handle for
the same inode, if that is not possible skip sending the
fsync call to the server to avoid breaking the apps.

Reported-by: Julian Sikorski <belegdol@gmail.com>
Tested-by: Julian Sikorski <belegdol@gmail.com>
Suggested-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/file.c