ceph: reset osd after relevant messages timed out
authorYehuda Sadeh <yehuda@hq.newdream.net>
Fri, 26 Feb 2010 23:32:31 +0000 (15:32 -0800)
committerSage Weil <sage@newdream.net>
Thu, 4 Mar 2010 19:26:35 +0000 (11:26 -0800)
commit422d2cb8f9afadba1ecd3614f658b6daaaa480fb
tree22e1a61acdbbe1459b190c4dbb6019360464b2e9
parente9964c102312967a4bc1fd501cb628c4a3b19034
ceph: reset osd after relevant messages timed out

This simplifies the process of timing out messages. We
keep lru of current messages that are in flight. If a
timeout has passed, we reset the osd connection, so that
messages will be retransmitted.  This is a failsafe in case
we hit some sort of problem sending out message to the OSD.
Normally, we'll get notification via an updated osdmap if
there are problems.

If a request is older than the keepalive timeout, send a
keepalive to ensure we detect any breaks in the TCP connection.

Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/osd_client.c
fs/ceph/osd_client.h
fs/ceph/super.c
fs/ceph/super.h