diff options
author | Vlad Yasevich <vladislav.yasevich@hp.com> | 2007-02-21 05:06:19 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-02-26 14:42:50 -0500 |
commit | 1845a579e0c3084a822fbe610f7cfd1b0e0396ac (patch) | |
tree | d80d923c49fd5f6a1d7b44880389e286a375764c | |
parent | 8c4a2d41a7eb5a8f214f537acca533dcd6430782 (diff) |
[SCTP]: Strike the transport before updating rto.
Once we reach a point where we exceed the max.path.retrans, strike the
transport before updating the rto. This will force transport switch at
the right time, instead of 1 retransmit too late.
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/sctp/sm_statefuns.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c index b3cad8a03736..70c39eac0581 100644 --- a/net/sctp/sm_statefuns.c +++ b/net/sctp/sm_statefuns.c | |||
@@ -4605,12 +4605,12 @@ sctp_disposition_t sctp_sf_do_6_3_3_rtx(const struct sctp_endpoint *ep, | |||
4605 | * sent as soon as cwnd allows (normally when a SACK arrives). | 4605 | * sent as soon as cwnd allows (normally when a SACK arrives). |
4606 | */ | 4606 | */ |
4607 | 4607 | ||
4608 | /* NB: Rules E4 and F1 are implicit in R1. */ | ||
4609 | sctp_add_cmd_sf(commands, SCTP_CMD_RETRAN, SCTP_TRANSPORT(transport)); | ||
4610 | |||
4611 | /* Do some failure management (Section 8.2). */ | 4608 | /* Do some failure management (Section 8.2). */ |
4612 | sctp_add_cmd_sf(commands, SCTP_CMD_STRIKE, SCTP_TRANSPORT(transport)); | 4609 | sctp_add_cmd_sf(commands, SCTP_CMD_STRIKE, SCTP_TRANSPORT(transport)); |
4613 | 4610 | ||
4611 | /* NB: Rules E4 and F1 are implicit in R1. */ | ||
4612 | sctp_add_cmd_sf(commands, SCTP_CMD_RETRAN, SCTP_TRANSPORT(transport)); | ||
4613 | |||
4614 | return SCTP_DISPOSITION_CONSUME; | 4614 | return SCTP_DISPOSITION_CONSUME; |
4615 | } | 4615 | } |
4616 | 4616 | ||