dlm: clear correct bit during sctp init failure handling

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>
This commit is contained in:
Mike Christie 2013-06-14 04:56:11 -05:00 committed by David Teigland
parent e1631d0c48
commit b390ca38d2

View File

@ -562,7 +562,7 @@ static void sctp_send_shutdown(sctp_assoc_t associd)
static void sctp_init_failed_foreach(struct connection *con) static void sctp_init_failed_foreach(struct connection *con)
{ {
con->sctp_assoc = 0; 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)) if (!test_and_set_bit(CF_WRITE_PENDING, &con->flags))
queue_work(send_workqueue, &con->swork); queue_work(send_workqueue, &con->swork);
} }