libceph: clear all flags on con_close
authorSage Weil <sage@inktank.com>
Sat, 21 Jul 2012 00:30:40 +0000 (17:30 -0700)
committerSage Weil <sage@inktank.com>
Tue, 31 Jul 2012 01:16:02 +0000 (18:16 -0700)
Signed-off-by: Sage Weil <sage@inktank.com>
net/ceph/messenger.c

index b872db5c498941020c05c6c77a9729b70cace120..fa16f2cc35fef243cdfceb08bd8471ef14973b99 100644 (file)
@@ -528,6 +528,8 @@ void ceph_con_close(struct ceph_connection *con)
        clear_bit(CON_FLAG_LOSSYTX, &con->flags); /* so we retry next connect */
        clear_bit(CON_FLAG_KEEPALIVE_PENDING, &con->flags);
        clear_bit(CON_FLAG_WRITE_PENDING, &con->flags);
+       clear_bit(CON_FLAG_KEEPALIVE_PENDING, &con->flags);
+       clear_bit(CON_FLAG_BACKOFF, &con->flags);
 
        reset_connection(con);
        con->peer_global_seq = 0;