diff options
author | Pavel Shilovsky <pshilov@microsoft.com> | 2019-01-16 02:52:29 +0300 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2019-03-06 03:10:01 +0300 |
commit | 3349c3a79fb5d7632bfe426c014cbb589d1ca8e0 (patch) | |
tree | 21c3a55530782e36a9efb962abb67f73769b345d /fs/cifs/cifsproto.h | |
parent | 34f4deb7c56c6fdc77a7e414203f0045bb6db32b (diff) | |
download | linux-3349c3a79fb5d7632bfe426c014cbb589d1ca8e0.tar.xz |
CIFS: Check for reconnects before sending async requests
The reconnect might have happended after we obtained credits
and before we acquired srv_mutex. Check for that under the mutex
and retry an async operation if the reconnect is detected.
Signed-off-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/cifs/cifsproto.h')
-rw-r--r-- | fs/cifs/cifsproto.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/cifs/cifsproto.h b/fs/cifs/cifsproto.h index 7a9a9fd12ea9..9e8394fee29e 100644 --- a/fs/cifs/cifsproto.h +++ b/fs/cifs/cifsproto.h @@ -93,7 +93,8 @@ extern int cifs_discard_remaining_data(struct TCP_Server_Info *server); extern int cifs_call_async(struct TCP_Server_Info *server, struct smb_rqst *rqst, mid_receive_t *receive, mid_callback_t *callback, - mid_handle_t *handle, void *cbdata, const int flags); + mid_handle_t *handle, void *cbdata, const int flags, + const struct cifs_credits *exist_credits); extern int cifs_send_recv(const unsigned int xid, struct cifs_ses *ses, struct smb_rqst *rqst, int *resp_buf_type, const int flags, struct kvec *resp_iov); |