diff options
Diffstat (limited to 'src/vnet/tcp/tcp_output.c')
-rw-r--r-- | src/vnet/tcp/tcp_output.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/vnet/tcp/tcp_output.c b/src/vnet/tcp/tcp_output.c index 78148cd5695..dd1ec555902 100644 --- a/src/vnet/tcp/tcp_output.c +++ b/src/vnet/tcp/tcp_output.c @@ -1391,7 +1391,7 @@ tcp_timer_retransmit_handler (tcp_connection_t * tc) tc->rtt_ts = 0; /* Passive open establish timeout */ - if (tc->rto > TCP_ESTABLISH_TIME >> 1) + if (tc->rto > tcp_cfg.syn_rcvd_time >> 1) { tcp_connection_set_state (tc, TCP_STATE_CLOSED); tcp_connection_timers_reset (tc); @@ -1458,6 +1458,8 @@ tcp_timer_retransmit_syn_handler (tcp_connection_t * tc) TCP_EVT (TCP_EVT_CC_EVT, tc, 2); tc->rtt_ts = 0; + tcp_worker_stats_inc (wrk, to_establish, 1); + /* Active open establish timeout */ if (tc->rto >= TCP_ESTABLISH_TIME >> 1) { @@ -1507,6 +1509,8 @@ tcp_timer_persist_handler (tcp_connection_t * tc) int n_bytes = 0; u8 *data; + tcp_worker_stats_inc (wrk, to_persist, 1); + /* Problem already solved or worse */ if (tc->state == TCP_STATE_CLOSED || tc->snd_wnd > tc->snd_mss || (tc->flags & TCP_CONN_FINSNT)) |