diff options
author | Yuchung Cheng <ycheng@google.com> | 2021-09-23 21:17:07 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-09-24 14:16:40 +0100 |
commit | 40bc6063796ec77b6073861f9a1993be20d5befd (patch) | |
tree | cc2672d4809c34d3f8318724bb557a9fb641ddca /net/ipv4/tcp_output.c | |
parent | ae98f40d32cd0ee6fc222e765734ffa497a0a95e (diff) | |
download | linux-40bc6063796ec77b6073861f9a1993be20d5befd.tar.gz linux-40bc6063796ec77b6073861f9a1993be20d5befd.tar.bz2 linux-40bc6063796ec77b6073861f9a1993be20d5befd.zip |
tcp: tracking packets with CE marks in BW rate sample
In order to track CE marks per rate sample (one round trip), TCP needs a
per-skb header field to record the tp->delivered_ce count when the skb
was sent. To make space, we replace the "last_in_flight" field which is
used exclusively for NV congestion control. The stat needed by NV can be
alternatively approximated by existing stats tcp_sock delivered and
mss_cache.
This patch counts the number of packets delivered which have CE marks in
the rate sample, using similar approach of delivery accounting.
Cc: Lawrence Brakmo <brakmo@fb.com>
Signed-off-by: Yuchung Cheng <ycheng@google.com>
Acked-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Luke Hsiao <lukehsiao@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r-- | net/ipv4/tcp_output.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 6d72f3ea48c4..fdc39b4fbbfa 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -1256,8 +1256,6 @@ static int __tcp_transmit_skb(struct sock *sk, struct sk_buff *skb, tp->tcp_wstamp_ns = max(tp->tcp_wstamp_ns, tp->tcp_clock_cache); skb->skb_mstamp_ns = tp->tcp_wstamp_ns; if (clone_it) { - TCP_SKB_CB(skb)->tx.in_flight = TCP_SKB_CB(skb)->end_seq - - tp->snd_una; oskb = skb; tcp_skb_tsorted_save(oskb) { |