diff options
author | Sage Weil <sage@newdream.net> | 2011-03-03 15:14:53 -0500 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2011-03-03 16:47:40 -0500 |
commit | 692d20f576fb26f62c83f80dbf3ea899998391b7 (patch) | |
tree | 91b3d1984b2986ea99c2b208de6dc65f1a74c701 | |
parent | 38815b780285a4957852c5c9dbe94991c0b26c56 (diff) |
libceph: retry after authorization failure
If we mark the connection CLOSED we will give up trying to reconnect to
this server instance. That is appropriate for things like a protocol
version mismatch that won't change until the server is restarted, at which
point we'll get a new addr and reconnect. An authorization failure like
this is probably due to the server not properly rotating it's secret keys,
however, and should be treated as transient so that the normal backoff and
retry behavior kicks in.
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r-- | net/ceph/messenger.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c index 35b36b86d762..6bd5025f6220 100644 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c | |||
@@ -1248,8 +1248,6 @@ static int process_connect(struct ceph_connection *con) | |||
1248 | con->auth_retry); | 1248 | con->auth_retry); |
1249 | if (con->auth_retry == 2) { | 1249 | if (con->auth_retry == 2) { |
1250 | con->error_msg = "connect authorization failure"; | 1250 | con->error_msg = "connect authorization failure"; |
1251 | reset_connection(con); | ||
1252 | set_bit(CLOSED, &con->state); | ||
1253 | return -1; | 1251 | return -1; |
1254 | } | 1252 | } |
1255 | con->auth_retry = 1; | 1253 | con->auth_retry = 1; |