ceph: allow renewal of auth credentials
[linux-3.10.git] / fs / ceph / messenger.c
index e4e8d44..c434178 100644 (file)
@@ -1849,6 +1849,15 @@ static void ceph_fault(struct ceph_connection *con)
                con->in_msg = NULL;
        }
 
+       /*
+        * in case we faulted due to authentication, invalidate our
+        * current tickets so that we can get new ones.
+         */
+       if (con->auth_retry && con->ops->invalidate_authorizer) {
+               dout("calling invalidate_authorizer()\n");
+               con->ops->invalidate_authorizer(con);
+       }
+
        /* If there are no messages in the queue, place the connection
         * in a STANDBY state (i.e., don't try to reconnect just yet). */
        if (list_empty(&con->out_queue) && !con->out_keepalive_pending) {