]> git.karo-electronics.de Git - karo-tx-linux.git/commit
libceph: clear NEGOTIATING when done
authorAlex Elder <elder@inktank.com>
Wed, 23 May 2012 19:35:23 +0000 (14:35 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 26 Nov 2012 19:38:28 +0000 (11:38 -0800)
commitabb46df87f784b398bcdb5091175d24456e42f11
treefe74a12cb1cf4517e02cf64274e176125d9c1841
parent2a281c7aa696af085db44154d053a169e4b07449
libceph: clear NEGOTIATING when done

(cherry picked from commit 3ec50d1868a9e0493046400bb1fdd054c7f64ebd)

A connection state's NEGOTIATING bit gets set while in CONNECTING
state after we have successfully exchanged a ceph banner and IP
addresses with the connection's peer (the server).  But that bit
is not cleared again--at least not until another connection attempt
is initiated.

Instead, clear it as soon as the connection is fully established.
Also, clear it when a socket connection gets prematurely closed
in the midst of establishing a ceph connection (in case we had
reached the point where it was set).

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