aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ksmbd/connection.c
diff options
context:
space:
mode:
authorHyunchul Lee <hyc.lee@gmail.com>2021-07-10 09:31:08 +0900
committerNamjae Jeon <namjae.jeon@samsung.com>2021-07-10 09:40:26 +0900
commit4b92841ef27b56883fa4491a3d51db3eef68c481 (patch)
treec2ffb337e23bce05e5f883ba3ff629fbc833ea53 /fs/ksmbd/connection.c
parentksmbd: use kasprintf() in ksmbd_vfs_xattr_stream_name() (diff)
downloadlinux-dev-4b92841ef27b56883fa4491a3d51db3eef68c481.tar.xz
linux-dev-4b92841ef27b56883fa4491a3d51db3eef68c481.zip
ksmbd: fix the running request count decrement
decrement the count of running requests after sending the last response for multi-response requests. Signed-off-by: Hyunchul Lee <hyc.lee@gmail.com> Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/ksmbd/connection.c')
-rw-r--r--fs/ksmbd/connection.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ksmbd/connection.c b/fs/ksmbd/connection.c
index 928e22e19def..6e51e08addee 100644
--- a/fs/ksmbd/connection.c
+++ b/fs/ksmbd/connection.c
@@ -120,7 +120,8 @@ int ksmbd_conn_try_dequeue_request(struct ksmbd_work *work)
list_empty(&work->async_request_entry))
return 0;
- atomic_dec(&conn->req_running);
+ if (!work->multiRsp)
+ atomic_dec(&conn->req_running);
spin_lock(&conn->request_lock);
if (!work->multiRsp) {
list_del_init(&work->request_entry);