netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] [SCTP]: Force update of the rto when processing HB-ACK
@ 2007-01-30 22:32 Sridhar Samudrala
  2007-01-30 22:35 ` David Miller
  0 siblings, 1 reply; 2+ messages in thread
From: Sridhar Samudrala @ 2007-01-30 22:32 UTC (permalink / raw)
  To: davem; +Cc: netdev, lksctp-developers

[SCTP]: Force update of the rto when processing HB-ACK

When processing a HEARTBEAT-ACK it's possible that the transport rto
timers will not be updated because a prior T3-RTX processing would
have cleared the rto_pending flag on the transport.  However, if
we received a valid HEARTBEAT-ACK, we want to force update the
rto variables, so re-set the rto_pending flag before calling
sctp_transport_update_rto().

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
---
 net/sctp/sm_sideeffect.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/net/sctp/sm_sideeffect.c b/net/sctp/sm_sideeffect.c
index 8bd3097..25c0277 100644
--- a/net/sctp/sm_sideeffect.c
+++ b/net/sctp/sm_sideeffect.c
@@ -621,7 +621,13 @@ static void sctp_cmd_transport_on(sctp_cmd_seq_t *cmds,
 	/* The receiver of the HEARTBEAT ACK should also perform an
 	 * RTT measurement for that destination transport address
 	 * using the time value carried in the HEARTBEAT ACK chunk.
+	 * If the transport's rto_pending variable has been cleared,
+	 * it was most likely due to a retransmit.  However, we want
+	 * to re-enable it to properly update the rto.
 	 */
+	if (t->rto_pending == 0)
+		t->rto_pending = 1;
+
 	hbinfo = (sctp_sender_hb_info_t *) chunk->skb->data;
 	sctp_transport_update_rto(t, (jiffies - hbinfo->sent_at));




^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/1] [SCTP]: Force update of the rto when processing HB-ACK
  2007-01-30 22:32 [PATCH 1/1] [SCTP]: Force update of the rto when processing HB-ACK Sridhar Samudrala
@ 2007-01-30 22:35 ` David Miller
  0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2007-01-30 22:35 UTC (permalink / raw)
  To: sri; +Cc: netdev, lksctp-developers

From: Sridhar Samudrala <sri@us.ibm.com>
Date: Tue, 30 Jan 2007 14:32:51 -0800

> [SCTP]: Force update of the rto when processing HB-ACK
> 
> When processing a HEARTBEAT-ACK it's possible that the transport rto
> timers will not be updated because a prior T3-RTX processing would
> have cleared the rto_pending flag on the transport.  However, if
> we received a valid HEARTBEAT-ACK, we want to force update the
> rto variables, so re-set the rto_pending flag before calling
> sctp_transport_update_rto().
> 
> Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
> Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>

I'll apply this, thanks Sridhar.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-01-30 22:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-30 22:32 [PATCH 1/1] [SCTP]: Force update of the rto when processing HB-ACK Sridhar Samudrala
2007-01-30 22:35 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).