From 3b45b4c922a5f5835afa4e9211d64da2c6868633 Mon Sep 17 00:00:00 2001 From: Krishna Srinivas Date: Tue, 10 Mar 2009 00:00:58 -0700 Subject: ping timer will not timeout if we recently got POLLOUT on the socket i.e if ((cur - (sent|received)) < timeout) Signed-off-by: Anand V. Avati --- xlators/protocol/client/src/client-protocol.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'xlators/protocol/client/src/client-protocol.c') diff --git a/xlators/protocol/client/src/client-protocol.c b/xlators/protocol/client/src/client-protocol.c index 95a5db895..58eba01ed 100644 --- a/xlators/protocol/client/src/client-protocol.c +++ b/xlators/protocol/client/src/client-protocol.c @@ -326,8 +326,6 @@ call_bail (void *data) } } - /* TODO while(1) is not nice - use splice */ - do { saved_frame = saved_frames_get_timedout (conn->saved_frames, @@ -500,8 +498,10 @@ client_ping_timer_expired (void *data) conn->ping_timer); gettimeofday (¤t, NULL); - if ((current.tv_sec - conn->last_received.tv_sec) < - conn->ping_timeout) { + if (((current.tv_sec - conn->last_received.tv_sec) < + conn->ping_timeout) + || ((current.tv_sec - conn->last_sent.tv_sec) < + conn->ping_timeout)) { transport_activity = 1; } -- cgit