aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ceph/messenger.c
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2009-11-20 18:14:15 -0500
committerSage Weil <sage@newdream.net>2009-11-20 18:14:15 -0500
commit03c677e1d189ff62891d9f278c55bb798a418b81 (patch)
tree132c50a3b698c964625504ca833f08f161ffe0a5 /fs/ceph/messenger.c
parent0dc2570fab222affe7739b88b5ed04c511d433dc (diff)
ceph: reset msgr backoff during open, not after successful handshake
Reset the backoff delay when we reopen the connection, so that the delays for any initial connection problems are reasonable. We were resetting only after a successful handshake, which was of limited utility. Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/messenger.c')
-rw-r--r--fs/ceph/messenger.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/ceph/messenger.c b/fs/ceph/messenger.c
index 0b1674854b25..45cec31fdf5e 100644
--- a/fs/ceph/messenger.c
+++ b/fs/ceph/messenger.c
@@ -348,6 +348,7 @@ void ceph_con_open(struct ceph_connection *con, struct ceph_entity_addr *addr)
348 set_bit(OPENING, &con->state); 348 set_bit(OPENING, &con->state);
349 clear_bit(CLOSED, &con->state); 349 clear_bit(CLOSED, &con->state);
350 memcpy(&con->peer_addr, addr, sizeof(*addr)); 350 memcpy(&con->peer_addr, addr, sizeof(*addr));
351 con->delay = 0; /* reset backoff memory */
351 queue_con(con); 352 queue_con(con);
352} 353}
353 354
@@ -1162,8 +1163,6 @@ static int process_connect(struct ceph_connection *con)
1162 con->connect_seq); 1163 con->connect_seq);
1163 WARN_ON(con->connect_seq != 1164 WARN_ON(con->connect_seq !=
1164 le32_to_cpu(con->in_reply.connect_seq)); 1165 le32_to_cpu(con->in_reply.connect_seq));
1165
1166 con->delay = 0; /* reset backoff memory */
1167 prepare_read_tag(con); 1166 prepare_read_tag(con);
1168 break; 1167 break;
1169 1168