diff options
author | Ryujiro Shibuya <ryujiro.shibuya@owmobility.com> | 2020-10-23 07:35:53 +0000 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2020-10-26 14:50:02 +0000 |
commit | d899d54c5ff48377345db7072077af7c71b9d104 (patch) | |
tree | 1ae7348c0e2f3c6e03d967d4a3b14014f253d829 /src/vnet/tcp/tcp_bt.c | |
parent | bcaa44ced6fe456835f3f73d184ab2345e39d367 (diff) |
tcp: byte tracker fix
Type: fix
Signed-off-by: Ryujiro Shibuya <ryujiro.shibuya@owmobility.com>
Change-Id: If7e22978a6b65f5b68ccb2bd97b5e0fba167b3bf
Diffstat (limited to 'src/vnet/tcp/tcp_bt.c')
-rw-r--r-- | src/vnet/tcp/tcp_bt.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/vnet/tcp/tcp_bt.c b/src/vnet/tcp/tcp_bt.c index de2e7ad7f8e..07f86789945 100644 --- a/src/vnet/tcp/tcp_bt.c +++ b/src/vnet/tcp/tcp_bt.c @@ -306,6 +306,7 @@ tcp_bt_track_tx (tcp_connection_t * tc, u32 len) tail = bt_get_sample (bt, bt->tail); if (tail && tail->max_seq == tc->snd_nxt + && !(tail->flags & TCP_BTS_IS_SACKED) && tail->tx_time == tcp_time_now_us (tc->c_thread_index)) { tail->max_seq += len; @@ -504,7 +505,10 @@ tcp_bt_walk_samples (tcp_connection_t * tc, tcp_rate_sample_t * rs) } if (cur && seq_lt (cur->min_seq, tc->snd_una)) - tcp_bt_sample_to_rate_sample (tc, cur, rs); + { + bt_update_sample (bt, cur, tc->snd_una); + tcp_bt_sample_to_rate_sample (tc, cur, rs); + } } static void |