DLM: close othercon at send/receive error

If an error occurs in the sending / receiving process, if othercon
exists, sending / receiving processing using othercon may also result
in an error. We fix to pre-close othercon as well.

Signed-off-by: Tadashi Miyauchi <[email protected]>
Signed-off-by: Tsutomu Owa <[email protected]>
Signed-off-by: David Teigland <[email protected]>
This commit is contained in:
[email protected] 2017-09-12 08:56:15 +00:00 • committed by David Teigland
commit c553e173b0

View file

@ -703,7 +703,7 @@ out_resched:
out_close:
mutex_unlock(&con->sock_mutex);
if (ret != -EAGAIN) {
close_connection(con, false, true, false);
close_connection(con, true, true, false);
/* Reconnect when there is something to send */
}
/* Don't return success if we really got EOF */
@ -1530,7 +1530,7 @@ out:
send_error:
mutex_unlock(&con->sock_mutex);
close_connection(con, false, false, true);
close_connection(con, true, false, true);
/* Requeue the send work. When the work daemon runs again, it will try
a new connection, then call this function again. */
queue_work(send_workqueue, &con->swork);