diff options
Diffstat (limited to 'net/sctp/transport.c')
-rw-r--r-- | net/sctp/transport.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sctp/transport.c b/net/sctp/transport.c index 9647fb277221..3f34f61221ec 100644 --- a/net/sctp/transport.c +++ b/net/sctp/transport.c | |||
@@ -191,7 +191,7 @@ static void sctp_transport_destroy(struct sctp_transport *transport) | |||
191 | /* Start T3_rtx timer if it is not already running and update the heartbeat | 191 | /* Start T3_rtx timer if it is not already running and update the heartbeat |
192 | * timer. This routine is called every time a DATA chunk is sent. | 192 | * timer. This routine is called every time a DATA chunk is sent. |
193 | */ | 193 | */ |
194 | void sctp_transport_reset_timers(struct sctp_transport *transport) | 194 | void sctp_transport_reset_timers(struct sctp_transport *transport, int force) |
195 | { | 195 | { |
196 | /* RFC 2960 6.3.2 Retransmission Timer Rules | 196 | /* RFC 2960 6.3.2 Retransmission Timer Rules |
197 | * | 197 | * |
@@ -201,7 +201,7 @@ void sctp_transport_reset_timers(struct sctp_transport *transport) | |||
201 | * address. | 201 | * address. |
202 | */ | 202 | */ |
203 | 203 | ||
204 | if (!timer_pending(&transport->T3_rtx_timer)) | 204 | if (force || !timer_pending(&transport->T3_rtx_timer)) |
205 | if (!mod_timer(&transport->T3_rtx_timer, | 205 | if (!mod_timer(&transport->T3_rtx_timer, |
206 | jiffies + transport->rto)) | 206 | jiffies + transport->rto)) |
207 | sctp_transport_hold(transport); | 207 | sctp_transport_hold(transport); |