summaryrefslogtreecommitdiffstats
path: root/fs/cifs/transport.c
diff options
context:
space:
mode:
authorSteve French <stfrench@microsoft.com>2019-03-10 03:29:55 +0100
committerSteve French <stfrench@microsoft.com>2019-03-15 01:32:35 +0100
commit7937ca961c847bda8a75da5d9c34efee9602f6b5 (patch)
tree62979d8e679d6800dc3f71c8352ef175733732bf /fs/cifs/transport.c
parentsmb3: display security information in /proc/fs/cifs/DebugData more accurately (diff)
downloadlinux-7937ca961c847bda8a75da5d9c34efee9602f6b5.tar.xz
linux-7937ca961c847bda8a75da5d9c34efee9602f6b5.zip
smb3: add dynamic tracepoint for timeout waiting for credits
To help debug credit starvation problems where we timeout waiting for server to grant the client credits. Signed-off-by: Steve French <stfrench@microsoft.com> Reviewed-by: Ronnie Sahlberg <lsahlber@redhat.com> Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Diffstat (limited to 'fs/cifs/transport.c')
-rw-r--r--fs/cifs/transport.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/cifs/transport.c b/fs/cifs/transport.c
index b3d04018195c..8731cfa66026 100644
--- a/fs/cifs/transport.c
+++ b/fs/cifs/transport.c
@@ -527,6 +527,8 @@ wait_for_free_credits(struct TCP_Server_Info *server, const int num_credits,
has_credits(server, credits, num_credits), t);
cifs_num_waiters_dec(server);
if (!rc) {
+ trace_smb3_credit_timeout(server->CurrentMid,
+ server->hostname, num_credits);
cifs_dbg(VFS, "wait timed out after %d ms\n",
timeout);
return -ENOTSUPP;
@@ -565,6 +567,9 @@ wait_for_free_credits(struct TCP_Server_Info *server, const int num_credits,
t);
cifs_num_waiters_dec(server);
if (!rc) {
+ trace_smb3_credit_timeout(
+ server->CurrentMid,
+ server->hostname, num_credits);
cifs_dbg(VFS, "wait timed out after %d ms\n",
timeout);
return -ENOTSUPP;