diff options
author | Ronnie Sahlberg <lsahlber@redhat.com> | 2018-07-31 08:48:22 +1000 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2018-08-07 14:20:22 -0500 |
commit | 9da6ec7775d2cd76df53fbf4f1f35f6d490204f5 (patch) | |
tree | 4b94d5c7acde55bde6f42779a986c9de3268d513 /fs/cifs/smb2inode.c | |
parent | bf1fdeb7899a86adfbe0b521bee5cf78bb870a14 (diff) | |
download | linux-rpi-9da6ec7775d2cd76df53fbf4f1f35f6d490204f5.tar.gz linux-rpi-9da6ec7775d2cd76df53fbf4f1f35f6d490204f5.tar.bz2 linux-rpi-9da6ec7775d2cd76df53fbf4f1f35f6d490204f5.zip |
cifs: use a refcount to protect open/closing the cached file handle
Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Cc: <stable@vger.kernel.org>
Diffstat (limited to 'fs/cifs/smb2inode.c')
-rw-r--r-- | fs/cifs/smb2inode.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/cifs/smb2inode.c b/fs/cifs/smb2inode.c index d01ad706d7fc..f22cbc0d1869 100644 --- a/fs/cifs/smb2inode.c +++ b/fs/cifs/smb2inode.c @@ -120,7 +120,9 @@ smb2_open_op_close(const unsigned int xid, struct cifs_tcon *tcon, break; } - if (use_cached_root_handle == false) + if (use_cached_root_handle) + close_shroot(&tcon->crfid); + else rc = SMB2_close(xid, tcon, fid.persistent_fid, fid.volatile_fid); if (tmprc) rc = tmprc; |