ocfs2: Reconnect after idle time out.
authorTao Ma <tao.ma@oracle.com>
Wed, 5 Mar 2008 07:50:12 +0000 (15:50 +0800)
committerMark Fasheh <mfasheh@suse.com>
Fri, 18 Apr 2008 15:56:10 +0000 (08:56 -0700)
commit5cc3bf2786f63cceb191c3c02ddd83c6f38a7d64
treea9d7f6fa7d251cff67d6b177835ff1f43d23ab2d
parent8f50eb978935431ccbf89b0344efd4ce6a924875
ocfs2:  Reconnect after idle time out.

Currently, o2net connects to a node on hb_up and disconnects on
hb_down and net timeout.

It disconnects on net timeout is ok, but it should attempt to
reconnect back. This is because sometimes nodes get overloaded
enough that the network connection breaks but the disk hb does not.
And if we get into that situation, we either fence (unnecessarily)
or wait for its disk hb to die (and sometimes hang in the process).

So in this updated scheme, when the network disconnects, we keep
attempting to reconnect till we succeed or we get a disk hb down
event.

If the other node is really dead, then we will eventually get a
node down event. If not, we should be able to connect again and
continue.

Signed-off-by: Tao Ma <tao.ma@oracle.com>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
fs/ocfs2/cluster/tcp.c
fs/ocfs2/cluster/tcp_internal.h