DLM: use CF_CLOSE flag to stop dlm_send correctly
authortsutomu.owa@toshiba.co.jp <tsutomu.owa@toshiba.co.jp>
Tue, 12 Sep 2017 09:01:24 +0000 (09:01 +0000)
committerDavid Teigland <teigland@redhat.com>
Mon, 25 Sep 2017 17:45:21 +0000 (12:45 -0500)
If reconnection fails while executing dlm_lowcomms_stop,
dlm_send will not stop.

Signed-off-by: Tadashi Miyauchi <miyauchi@toshiba-tops.co.jp>
Signed-off-by: Tsutomu Owa <tsutomu.owa@toshiba.co.jp>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/lowcomms.c

index 306b5fe0866fc6fd99be6e5d6c083c6b6397f3dd..215515198edb2aca1f5feab63edfaaced75f1466 100644 (file)
@@ -1643,6 +1643,7 @@ static int work_start(void)
 static void _stop_conn(struct connection *con, bool and_other)
 {
        mutex_lock(&con->sock_mutex);
+       set_bit(CF_CLOSE, &con->flags);
        set_bit(CF_READ_PENDING, &con->flags);
        set_bit(CF_WRITE_PENDING, &con->flags);
        if (con->sock && con->sock->sk)