scsi: iscsi: iscsi_tcp: Start socket shutdown during conn stop

Make sure the conn socket shutdown starts before we start the timer to fail
commands to upper layers.

Link: https://lore.kernel.org/r/20210525181821.7617-10-michael.christie@oracle.com
Reviewed-by: Lee Duncan <lduncan@suse.com>
Signed-off-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Mike Christie 2021-05-25 13:18:02 -05:00 committed by Martin K. Petersen
parent c0920cd36f
commit 788b71c54f

View File

@ -600,6 +600,12 @@ static void iscsi_sw_tcp_release_conn(struct iscsi_conn *conn)
if (!sock) if (!sock)
return; return;
/*
* Make sure we start socket shutdown now in case userspace is up
* but delayed in releasing the socket.
*/
kernel_sock_shutdown(sock, SHUT_RDWR);
sock_hold(sock->sk); sock_hold(sock->sk);
iscsi_sw_tcp_conn_restore_callbacks(conn); iscsi_sw_tcp_conn_restore_callbacks(conn);
sock_put(sock->sk); sock_put(sock->sk);