dlm: clear correct bit during sctp init failure handling
authorMike Christie <michaelc@cs.wisc.edu>
Fri, 14 Jun 2013 09:56:11 +0000 (04:56 -0500)
committerDavid Teigland <teigland@redhat.com>
Fri, 14 Jun 2013 18:07:11 +0000 (13:07 -0500)
We should be testing and cleaing the init pending bit because later
when sctp_init_assoc is recalled it will be checking that it is not set
and set the bit.

We do not want to touch CF_CONNECT_PENDING here because we will queue
swork and process_send_sockets will then call the connect_action function.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/lowcomms.c

index 1536599..87e68dd 100644 (file)
@@ -562,7 +562,7 @@ static void sctp_send_shutdown(sctp_assoc_t associd)
 static void sctp_init_failed_foreach(struct connection *con)
 {
        con->sctp_assoc = 0;
-       if (test_and_clear_bit(CF_CONNECT_PENDING, &con->flags)) {
+       if (test_and_clear_bit(CF_INIT_PENDING, &con->flags)) {
                if (!test_and_set_bit(CF_WRITE_PENDING, &con->flags))
                        queue_work(send_workqueue, &con->swork);
        }