tcp: record last received ipv6 flowlabel
authorDavid Morley <morleyd@google.com>
Fri, 6 Oct 2023 01:18:40 +0000 (01:18 +0000)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 10 Oct 2023 08:02:59 +0000 (10:02 +0200)
commit95b9a87c6a6b708cccda1f9b7baf9920b80cdabf
treed06f62ced178016f8a07a882290350d1b01ca1a9
parent8cea95b0bd7930367f11e2abceda6e096dd18943
tcp: record last received ipv6 flowlabel

In order to better estimate whether a data packet has been
retransmitted or is the result of a TLP, we save the last received
ipv6 flowlabel.

To make space for this field we resize the "ato" field in
inet_connection_sock as the current value of TCP_DELACK_MAX can be
fully contained in 8 bits and add a compile_time_assert ensuring this
field is the required size.

v2: addressed kernel bot feedback about dccp_delack_timer()
v3: addressed build error introduced by commit bbf80d713fe7 ("tcp:
derive delack_max from rto_min")

Signed-off-by: David Morley <morleyd@google.com>
Signed-off-by: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Yuchung Cheng <ycheng@google.com>
Tested-by: David Morley <morleyd@google.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
include/net/inet_connection_sock.h
include/net/tcp.h
net/dccp/timer.c
net/ipv4/tcp.c
net/ipv4/tcp_input.c
net/ipv4/tcp_timer.c