aboutsummaryrefslogtreecommitdiffstats
path: root/net/ceph
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2011-03-03 15:14:53 -0500
committerSage Weil <sage@newdream.net>2011-03-03 16:47:40 -0500
commit692d20f576fb26f62c83f80dbf3ea899998391b7 (patch)
tree91b3d1984b2986ea99c2b208de6dc65f1a74c701 /net/ceph
parent38815b780285a4957852c5c9dbe94991c0b26c56 (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>
Diffstat (limited to 'net/ceph')
-rw-r--r--net/ceph/messenger.c2
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;