[Patch v2 07/19] CIFS: SMBD: Destroy SMBDirect session on shutdown or umount

Long Li
2017-08-20T19:04:31Z

From: Long Li <longli@microsoft.com>

Finally, when CIFS wants to umount, do a proper shutdown on transport.

Signed-off-by: Long Li <longli@microsoft.com>
---
fs/cifs/connect.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c
index b337ca7..f65950f 100644
--- a/fs/cifs/connect.c
+++ b/fs/cifs/connect.c
@@ -708,6 +708,11 @@ static void clean_demultiplex_info(struct TCP_Server_Info *server)
/* give those requests time to exit */
msleep(125);

+ if (server->smbd_conn) {
+ smbd_destroy(server->smbd_conn);
+ server->smbd_conn = NULL;
+ }
+
if (server->ssocket) {
sock_release(server->ssocket);
server->ssocket = NULL;
@@ -2194,6 +2199,9 @@ cifs_put_tcp_session(struct TCP_Server_Info *server, int from_reconnect)
return;
}

+ if (server->smbd_conn)
+ smbd_destroy(server->smbd_conn);
+
put_net(cifs_net_ns(server));

list_del_init(&server->tcp_ses_list);
--
2.7.4