linux/fs/cifs
Pavel Shilovsky e8b26877c4 CIFS: Close open handle after interrupted close
commit 9150c3adbf upstream.

If Close command is interrupted before sending a request
to the server the client ends up leaking an open file
handle. This wastes server resources and can potentially
block applications that try to remove the file or any
directory containing this file.

Fix this by putting the close command into a worker queue,
so another thread retries it later.

Cc: Stable <stable@vger.kernel.org>
Tested-by: Frank Sorenson <sorenson@redhat.com>
Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-21 10:57:35 +01:00
..
asn1.c
cache.c cifs: use 64-bit timestamps for fscache 2018-08-07 14:15:41 -05:00
cifs_debug.c cifs: Don't display RDMA transport on reconnect 2019-12-21 10:57:33 +01:00
cifs_debug.h
cifs_dfs_ref.c cifs: use correct format characters 2019-04-05 22:32:59 +02:00
cifs_fs_sb.h cifs: Properly handle auto disabling of serverino option 2019-09-16 08:22:17 +02:00
cifs_ioctl.h
cifs_spnego.c smb3: on kerberos mount if server doesn't specify auth type use krb5 2018-11-13 11:08:48 -08:00
cifs_spnego.h
cifs_unicode.c fs/cifs: don't translate SFM_SLASH (U+F026) to backslash 2018-09-02 23:21:42 -05:00
cifs_unicode.h
cifs_uniupr.h
cifsacl.c
cifsacl.h
cifsencrypt.c cifs: Make sure all data pages are signed correctly 2018-08-07 14:15:41 -05:00
cifsfs.c smb3: allow disabling requesting leases 2019-10-05 13:10:08 +02:00
cifsfs.h cifs: update internal module version number for cifs.ko to 2.12 2018-08-23 15:11:10 -05:00
cifsglob.h cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs 2019-11-10 11:27:34 +01:00
cifspdu.h
cifsproto.h cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs 2019-11-10 11:27:34 +01:00
cifssmb.c CIFS: Respect SMB2 hdr preamble size in read responses 2019-11-06 13:05:35 +01:00
connect.c cifs: add credits from unmatched responses/messages 2019-11-06 13:05:36 +01:00
dir.c CIFS: Force reval dentry if LOOKUP_REVAL flag is set 2019-10-17 13:45:17 -07:00
dns_resolve.c
dns_resolve.h
export.c
file.c CIFS: Respect O_SYNC and O_DIRECT flags during reconnect 2019-12-21 10:57:34 +01:00
fscache.c cifs: use 64-bit timestamps for fscache 2018-08-07 14:15:41 -05:00
fscache.h cifs: use 64-bit timestamps for fscache 2018-08-07 14:15:41 -05:00
inode.c CIFS: Force revalidate inode when dentry is stale 2019-10-17 13:45:17 -07:00
ioctl.c
Kconfig cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) 2018-12-21 14:15:23 +01:00
link.c smb3: don't request leases in symlink creation and query 2018-08-07 14:15:57 -05:00
Makefile
misc.c cifs: Properly handle auto disabling of serverino option 2019-09-16 08:22:17 +02:00
netmisc.c fs: cifs: mute -Wunused-const-variable message 2019-11-06 13:05:51 +01:00
nterr.c
nterr.h
ntlmssp.h
readdir.c cifs: check ntwrk_buf_start for NULL before dereferencing it 2019-02-12 19:47:17 +01:00
rfc1002pdu.h
sess.c cifs: check kmalloc before use 2018-08-23 15:10:49 -05:00
smb1ops.c CIFS: avoid using MID 0xFFFF 2019-10-29 09:20:01 +01:00
smb2file.c cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs 2019-11-10 11:27:34 +01:00
smb2glob.h
smb2inode.c smb3: Do not send SMB3 SET_INFO if nothing changed 2018-08-07 14:30:59 -05:00
smb2maperror.c SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write 2019-06-25 11:36:01 +08:00
smb2misc.c CIFS: Close open handle after interrupted close 2019-12-21 10:57:35 +01:00
smb2ops.c CIFS: Respect SMB2 hdr preamble size in read responses 2019-11-06 13:05:35 +01:00
smb2pdu.c CIFS: Close open handle after interrupted close 2019-12-21 10:57:35 +01:00
smb2pdu.h SMB3: Fix persistent handles reconnect 2019-11-12 19:20:42 +01:00
smb2proto.h CIFS: Close open handle after interrupted close 2019-12-21 10:57:35 +01:00
smb2status.h
smb2transport.c CIFS: Do not skip SMB2 message IDs on send failures 2019-03-23 20:09:56 +01:00
smbdirect.c cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE 2019-12-21 10:57:32 +01:00
smbdirect.h cifs: smbd: take an array of reqeusts when sending upper layer data 2019-09-16 08:22:13 +02:00
smbencrypt.c
smberr.h
smbfsctl.h
trace.c
trace.h smb3: add tracepoint for slow responses 2018-08-07 14:28:01 -05:00
transport.c cifs: smbd: Return -EAGAIN when transport is reconnecting 2019-12-21 10:57:31 +01:00
winucase.c
xattr.c CIFS: fix max ea value size 2019-10-05 13:10:12 +02:00