]> git.ipfire.org Git - people/arne_f/kernel.git/commit
libceph: distinguish two phases of connect sequence
authorAlex Elder <elder@inktank.com>
Thu, 24 May 2012 16:55:03 +0000 (11:55 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 26 Nov 2012 19:38:28 +0000 (11:38 -0800)
commit8a0566f6aac534a20ed436e3bed56b736cef4c40
treef71c7dc5081ace4fa2116086da676a6bc1338b1b
parent05a24ecce18262f17aa0b28a6bf1191a2a456975
libceph: distinguish two phases of connect sequence

(cherry picked from commit 7593af920baac37752190a0db703d2732bed4a3b)

Currently a ceph connection enters a "CONNECTING" state when it
begins the process of (re-)connecting with its peer.  Once the two
ends have successfully exchanged their banner and addresses, an
additional NEGOTIATING bit is set in the ceph connection's state to
indicate the connection information exhange has begun.  The
CONNECTING bit/state continues to be set during this phase.

Rather than have the CONNECTING state continue while the NEGOTIATING
bit is set, interpret these two phases as distinct states.  In other
words, when NEGOTIATING is set, clear CONNECTING.  That way only
one of them will be active at a time.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ceph/messenger.c