Commit 5366afc4 authored by Hyunchul Lee's avatar Hyunchul Lee Committed by Steve French

ksmbd: smbd: fix connection dropped issue

When there are bursty connection requests,
RDMA connection event handler is deferred and
Negotiation requests are received even if
connection status is NEW.

To handle it, set the status to CONNECTED
if Negotiation requests are received.
Reported-by: default avatarYufan Chen <wiz.chen@gmail.com>
Signed-off-by: default avatarHyunchul Lee <hyc.lee@gmail.com>
Tested-by: default avatarYufan Chen <wiz.chen@gmail.com>
Acked-by: default avatarNamjae Jeon <linkinjeon@kernel.org>
Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
parent 7820c6ee
...@@ -576,6 +576,7 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc) ...@@ -576,6 +576,7 @@ static void recv_done(struct ib_cq *cq, struct ib_wc *wc)
} }
t->negotiation_requested = true; t->negotiation_requested = true;
t->full_packet_received = true; t->full_packet_received = true;
t->status = SMB_DIRECT_CS_CONNECTED;
enqueue_reassembly(t, recvmsg, 0); enqueue_reassembly(t, recvmsg, 0);
wake_up_interruptible(&t->wait_status); wake_up_interruptible(&t->wait_status);
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment