On Fri, 15 Jan 2021 14:30:58 -0800 Enke Chen wrote: > From: Enke Chen <enc...@paloaltonetworks.com> > > The TCP session does not terminate with TCP_USER_TIMEOUT when data > remain untransmitted due to zero window. > > The number of unanswered zero-window probes (tcp_probes_out) is > reset to zero with incoming acks irrespective of the window size, > as described in tcp_probe_timer(): > > RFC 1122 4.2.2.17 requires the sender to stay open indefinitely > as long as the receiver continues to respond probes. We support > this by default and reset icsk_probes_out with incoming ACKs. > > This counter, however, is the wrong one to be used in calculating the > duration that the window remains closed and data remain untransmitted. > Thanks to Jonathan Maxwell <jmaxwel...@gmail.com> for diagnosing the > actual issue. > > In this patch a new timestamp is introduced for the socket in order to > track the elapsed time for the zero-window probes that have not been > answered with any non-zero window ack. > > Fixes: 9721e709fa68 ("tcp: simplify window probe aborting on USER_TIMEOUT") > Reported-by: William McCall <william.mcc...@gmail.com> > Co-developed-by: Neal Cardwell <ncardw...@google.com> > Signed-off-by: Neal Cardwell <ncardw...@google.com> > Signed-off-by: Enke Chen <enc...@paloaltonetworks.com> > Reviewed-by: Yuchung Cheng <ych...@google.com> > Reviewed-by: Eric Dumazet <eduma...@google.com>
I take it you got all these tags off-list? I don't see them on the v1 discussion. Applied to net, thanks!