提交 5366afc4 编写于 作者: H Hyunchul Lee 提交者: 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: NYufan Chen <wiz.chen@gmail.com>
Signed-off-by: NHyunchul Lee <hyc.lee@gmail.com>
Tested-by: NYufan Chen <wiz.chen@gmail.com>
Acked-by: NNamjae Jeon <linkinjeon@kernel.org>
Signed-off-by: NSteve French <stfrench@microsoft.com>
上级 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% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册