ceph: fix authenticator timeout
authorSage Weil <sage@newdream.net>
Mon, 15 Mar 2010 22:47:22 +0000 (15:47 -0700)
committerSage Weil <sage@newdream.net>
Sun, 21 Mar 2010 04:33:09 +0000 (21:33 -0700)
commit63733a0fc55cca74b1911769633dc5dfd1a45907
treeb173d0f9a243dc4df463a8a73b64eabc26cec21c
parent8b218b8a4a65bf4e304ae8690cadb9100ef029c0
ceph: fix authenticator timeout

We were failing to reconnect to services due to an old authenticator, even
though we had the new ticket, because we weren't properly retrying the
connect handshake, because we were calling an old/incorrect helper that
left in_base_pos incorrect.  The result was a failure to reconnect to the
OSD or MDS (with an authentication error) if the MDS restarted after the
service had been up a few hours (long enough for the original authenticator
to be invalid).  This was only a problem if the AUTH_X authentication was
enabled.

Now that the 'negotiate' and 'connect' stages are fully separated, we
should use the prepare_read_connect() helper instead, and remove the
obsolete one.

Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/messenger.c